javascript – SystemJS,Angular2:在min / dev包之间切换
作者:互联网
我想以这种方式使用Angular2和SystemJS,这样我就可以轻松地在生产和开发之间切换.在开发中,我更喜欢使用每个文件的类,而不是在生产中我想使用单个最小化的angular2 bundle.
目前我有以下index.html和config.js:
indexl.html:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<link rel="stylesheet" type="text/css" href="/node_modules/bootstrap/dist/css/bootstrap.css"/>
<script type="text/javascript" src="/node_modules/angular2/bundles/angular2-polyfills.js"></script>
<script type="text/javascript" src="/node_modules/systemjs/dist/system.js"></script>
<script type="text/javascript" src="/js/config.js"></script>
<script>
System.import('ts/main.ts').catch(console.error.bind(console));
</script>
</head>
<body>
<my-app>Loading...</my-app>
</body>
</html>
config.js:
System.config({
transpiler: 'typescript',
typescriptOptions: {
emitDecoratorMetadata: true
},
map: {
'angular2': '/node_modules/angular2',
'rxjs': '/node_modules/rxjs'
},
paths: {
'typescript': 'node_modules/typescript/lib/typescript.js',
'http': 'node_modules/angular2/bundles/http.dev.js'
},
packages: {
angular2: {
defaultExtension: 'js'
},
rxjs: { defaultExtension: 'js' },
}
});
题:
上面的代码适用于开发.请建议如何更改System.config以便从单个/node_modules/angular2/bundles/angular2.min.js中使用angular2.将angular2.min.js添加到< script ...>< / script>不是一个选项,因为在这种情况下我将无法动态切换dev和min包(假设index.html是一个静态页面)
解决方法:
实际上,如果要使用/node_modules/angular2/bundles/angular2.min.js,则无需在SystemJ中配置任何内容,因为使用System.register将模块显式注册到此文件中.
因此,您可以从SystemJS配置的地图块中删除angular2.
标签:javascript,systemjs,angular 来源: https://codeday.me/bug/20190711/1431646.html