Jus*_*tin 15 minify angularjs gruntjs grunt-usemin
我有一个AngularJS应用程序,我正在研究usemin任务.这个应用程序有2个html页面,都包括一个缩小为common.js的块,其他页面包括为这些特定页面缩小的js.
page1.html
<!-- build:js scripts/common.js -->
<!-- bower:js -->
<script src="a.js"></script>
<script src="b.js"></script>
<!-- endbower -->
<!-- endbuild -->
<!-- build:js scripts/page1.js -->
<!-- bower:js -->
<script src="c.js"></script>
<script src="d.js"></script>
<!-- endbower -->
<!-- endbuild -->
Run Code Online (Sandbox Code Playgroud)
page2.html
<!-- build:js scripts/common.js -->
<!-- bower:js -->
<script src="a.js"></script>
<script src="b.js"></script>
<!-- endbower -->
<!-- endbuild -->
<!-- build:js scripts/page2.js -->
<!-- bower:js -->
<script src="e.js"></script>
<script src="f.js"></script>
<!-- endbower -->
<!-- endbuild -->
Run Code Online (Sandbox Code Playgroud)
Gruntfile.js
useminPrepare: {
html: ['<%= yeoman.app %>/page1.html', '<%= yeoman.app %>/page2.html'],
options: {
dest: '<%= yeoman.dist %>'
}
},
Run Code Online (Sandbox Code Playgroud)
Usemin很难过,因为common.js在两个文件中定义并出现错误:致命错误:尝试写入同一目标的不同源:我(想)我需要在useminPrepare中包含page1和page2才能正确获取page1.js和page2.js.人们如何解决这个问题?
通常,有角度的人会创建单页面应用程序,并为页面的整个骨架只创建一个“主”index.html。这样您只需处理一组文件。使用 ui-router、ng-includes 或其他东西将不同的子页面渲染到给定的 div 中。
| 归档时间: |
|
| 查看次数: |
2170 次 |
| 最近记录: |