我正在构建一个 angular2 应用程序,并开始进行我的构建/缩小过程。我可以使用未缩小的单个 JS 文件在开发模式下成功构建和运行我的应用程序。但是,当我将它们构建为单个串联文件时,我的应用程序将无法运行。我得到的只是一个空白页面,控制台上没有错误。我尝试过 webpack、gulp 等,在浏览器中运行时都得到相同的结果。
我很好奇是否有人已经让它发挥作用了?或者有什么建议吗?
我在编译的 JS(来自 typescript )中注意到的一件事是存在引导调用,但如果我设置断点,则永远不会执行。
我正在将 TypeScript 编译为 es5 和系统模块。 Angular2.beta12
索引.html
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- inject:css -->
<link rel="stylesheet" href="resources/css/ncss.css">
<link rel="stylesheet" href="css/App.css">
<!-- endinject -->
<!-- 1. Load libraries -->
<!-- IE required polyfills, in this exact order -->
<!-- inject:js -->
<script src="libs/system-polyfills.js"></script>
<script src="libs/angular2/bundles/angular2-polyfills.js"></script>
<script src="libs/system.src.js"></script>
<script src="libs/Rx.js"></script>
<script src="libs/angular2/bundles/angular2.min.js"></script>
<script src="libs/angular2/bundles/router.min.js"></script>
<script src="libs/angular2/bundles/http.min.js"></script>
<!-- endinject -->
<!--<script src="app/app.min.js"></script>-->
<!-- 2. Configure SystemJS -->
<script>
System.import('app/app.min.js')
.then(null, console.error.bind(console));
</script>
</head>
<!-- 3. Display the application -->
<body>
<app-component></app-component>
</body>
TS配置:
{
"compilerOptions": {
"target": "es5",
"module": "system",
"moduleResolution": "node",
"sourceMap": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"removeComments": false,
"noImplicitAny": true,
"declaration": true,
"suppressImplicitAnyIndexErrors": true,
"outDir": "./dist/app",
"outFile": "./dist/app/app.min.js"
},
"exclude": [
"node_modules",
"typings/browser",
"typings/browser.d.ts",
"dist/libs"
]
}
最佳答案
我想我已经有了答案。当我构建 dist
目录时,我正在挑选所需的文件。我最终复制了整个 angular2 和 rxjs 目录以使所有文件可供 SystemJS 使用,然后它开始工作。谢谢大家!
关于javascript - Minified angular2 - 有人成功完成此操作吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36361818/