SystemJs と Angular2 は初めてです。サードパーティのパッケージを使用していますが、bundles/code.js
ファイルがあるものとないものがあります。
私が使用しているものは、bundles/code.js
なんとか機能するようになりました。
ファイルを含めて、ファイル内に入れる<script src=foo/bundles/code.js>
ことができます。import * from 'code/foo'
ts
bundles/code.js
には次のようなものがSystem.registerDynamic("code/foo",...)
あるので、これはすべて意味があります(これは私の理解です)import
code/foo
バンドルを使用しないパッケージを見つけました。ロードする必要があるファイルは次の.js
ようになります。
// ./vendor/ng2-file-upload/ng2-file-upload.js
function __export(m) {
for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];
}
__export(require('./components/file-upload/file-select'));
__export(require('./components/file-upload/file-drop'));
__export(require('./components/file-upload/file-uploader'));
var file_select_2 = require('./components/file-upload/file-select');
var file_drop_2 = require('./components/file-upload/file-drop');
exports.FILE_UPLOAD_DIRECTIVES = [file_select_2.FileSelect, file_drop_2.FileDrop];
//# sourceMappingURL=ng2-file-upload.js.map
System
これはフォーマットではないことに気づきました。私は自分で次のことを試しましたindex.html
:
System.config({
packages: {
'js': {
format: 'register',
defaultExtension: 'js'
}
},
meta: {
'vendor/ng2-file-upload/ng2-file-upload.js' : {
format: 'cjs', // I have also tried 'amd' and 'global'
defaultExtension: 'js'
}
}
});
私も試してみました
System.config({
packages: {
'js': {
format: 'register',
defaultExtension: 'js'
},
'vendor/ng2-file-upload/ng2-file-upload.js' : {
format: 'cjs', // I have also tried 'amd' and 'global'
defaultExtension: 'js'
}
}
});
何をしても、次のエラーが発生します。
Uncaught ReferenceError: require が定義されていません
2 つの質問があります。
- どのようにロードし
ng2-file-upload.js
ますか? bundle
このパッケージの を作成するにはどうすればよいですか? (パッケージには、実行時にすべて.ts
の.d.ts
ファイルが含まれますnpm install
)