Angular 将2个节点_模块文件编译为一个文件

Angular 将2个节点_模块文件编译为一个文件,angular,angular2-directives,angular2-services,Angular,Angular2 Directives,Angular2 Services,我正试图找到一种方法,将angular 2 node_modules文件夹中需要的所有内容编译成一个文件。。当我的站点加载时,似乎有大量的http调用,这肯定不是最优的,也不是新的和改进的angular的推荐过程 我不关心我自己的typescript文件,因为我知道如何处理它们,但是你连接节点模块文件等的方法是什么?我已经阅读了github关于这一点的讨论,据我所知,没有原生绑定支持,但是我创建了一个gulp任务,可以让你达到3/4的效果 如果您使用的是SystemJS,那么可以使用System

我正试图找到一种方法,将angular 2 node_modules文件夹中需要的所有内容编译成一个文件。。当我的站点加载时,似乎有大量的http调用,这肯定不是最优的,也不是新的和改进的angular的推荐过程


我不关心我自己的typescript文件,因为我知道如何处理它们,但是你连接节点模块文件等的方法是什么?

我已经阅读了github关于这一点的讨论,据我所知,没有原生绑定支持,但是我创建了一个gulp任务,可以让你达到3/4的效果


如果您使用的是SystemJS,那么可以使用SystemJS builder包将angular 2的所有依赖项捆绑到一个文件中。这个文件大约是95k,这是相当合理的;正如您可能猜到的,如果您使用的是SystemJS,则加载时间会显著缩短(


1.
package.json
:将这些添加到
devdependency

“开发依赖性”:{
“吞咽”:“^3.9.1”,
“systemjs生成器”:“^0.15.16”
}
2.do
npm安装

3.
index.html
的同一级别创建gulpfile.js,其中包含此内容

var gulp=require('gulp'),
Builder=require('systemjs-Builder');
gulp.task('bundle-angular-dependencies',function(){
//可选构造函数选项
//设置baseURL并加载配置文件
var builder=new builder(“”,'systemjs.config.js');
返回生成器
.bundle('app/boot.js-[app/***.js],'path/to/put/angular.bundle.js',{minify:true})
.然后(函数(){
log('buildcomplete');
})
.catch(函数(err){
log('builderror');
控制台日志(err);
});
});
4.打开终端并转到项目目录。执行
bundle angular dependencies

5.
index.html
中,在
system.js
下方,但在
system.config.js
上方,引用
angular.bundle.js



如果您有任何疑问,请告诉我。

使用带有createCommonChunk插件的webpack,很棒的工具Hi Stew是的,那太好了。.我开始后悔已经进入angular 2。似乎这是一项非常多的额外工作。唯一的好处是能够说嘿,看看我的网站,它使用了尖端技术…时间投入了对于我来说,奖励与奖励并不重要,但不幸的是,我已经在用它和laravel构建我的新网站了。你的任何脚本都很受欢迎,我自己也是一个爱发牢骚的人,但我不介意深入研究gulp@user3461985Ang2在不到一个月前推出测试版,很多人抱怨它发布得太早在某种程度上同意,尽管我的应用程序发展得很好。如果你正在使用Laravel并将在你的PHP脚本中进行模板制作,Angular 2可能不是最佳选择。它非常希望成为你整个项目的主要引擎,除了你正在运行的处理数据库交互的任何服务。Laravel非常强大我认为使用Angular 2的缺点大于好处。这是我诚实的意见。话虽如此,如果你决定继续,这里是我的gulpfile的相关部分:--我仍处于开发模式,因此需要编辑。这看起来很有趣。你的systemjs.config.js文件看起来像什么Angular2快速入门指南不起作用ng,它仍然在调用所有依赖文件和angular.bundle.js。。。。