アプリの名前空間に登録するすべてのプロパティは、アプリ パッケージに依存する (使用する) パッケージで使用できるようになります。そのため、パッケージの名前空間を app-namespace に登録する場合は、パッケージ内で app-package への依存関係を宣言し、エクスポートするすべてのメソッド/オブジェクトを app-namespace に登録します。例:
ファイル: packages/myapp/namespace.js
MyApp = {};
ファイル: packages/myapp/package.js
Package.on_use(function (api, where) {
api.add_files([
"namespace.js"
], ['client', 'server']);
api.export("MyApp", ['client', 'server']);
});
ファイル: packages/myapp-module1/logic.js
packageSpecificMethod = function(){}
moduleOne = {};
//you can export an module-specific namespace by registering it in the app-namespace
MyApp.module1 = moduleOne;
//or you can (if you dont want package-namespaces) register you private methods in the app-namespace directly
MyApp.exportedMethod = packageSpecificMethod;
ファイル: packages/myapp-module1/package.js
Package.on_use(function (api, where) {
api.use([
'myapp'
], ['client', 'server']);
api.add_files([
"logic.js"
], ['client', 'server']);
});