我正在使用 angularJS 开发单页应用程序。对于 JS 优化,目前我有两种选择,一种是 requireJs,另一种是 Browserify。
哪一个最适合我的 AngularJs 单页应用程序。
请考虑易于实现、支持、最佳性能等
请提出建议
.state('root.home',{
url: '/index.html',
views: {
'header': {
templateUrl: 'modules/header/html/header.html',
controller: 'headerController'
},
'content-area': {
templateUrl: 'modules/home/html/home.html',
controller: 'homeController'
},
'footer': {
templateUrl: 'modules/common/html/footer.html',
controller: 'footerController'
}
},
data: {
displayName: 'Home',
}
})
在我的index.html页面中,我正在加载所需的javascript和不需要的脚本。哪一种是使用 AngularJs UI rooter 为主模块加载所需 JS 文件的最佳方法。请举一个 UI rooter 的例子
最佳答案
一些想法:
- Browserify 的易用性胜出。只需使用
require()
和module.exports
,就像在任何 Node 模块中一样;比 Require 的定义和依赖注入(inject)更容易。 - 两者的 CPU 时间性能可以忽略不计。就大小而言 - Require 需要将自身加载到 Bootstrap 中,但 Browserify 构建独立的 bundle 。然而,Browserify 确实喜欢默认导入一些 Node 库,这往往会增加大小。
- 特别是对于大型应用程序:requirejs 允许相当透明的异步加载脚本。 Browserify 没有。如果您有一个非常大的应用程序并且想要增量加载,这可能是一个因素。
- 值得注意的是:Browserify 允许您导入同构 Node.js 模块。由于您使用的是 Angular,应用本身不会是同构的,但可以利用更广泛的资源(并且可以通过简单的
npm install
引入它们)
关于javascript - RequireJs VS Browserify 哪个最适合JS优化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30635498/