Grunt用户转换路径到资产
Grunt usemin transform path to assets
这是我的输入文件(使用yeoman-angular)
<!-- build:js(./) scripts/vendor.js -->
<!-- bower:js -->
<script src="bower_components/angular/angular.js"></script>
...
<script src="bower_components/pagedown-semantic-ui/pagedown.js"></script>
<!-- endbower -->
<!-- endbuild -->
和usemin将所有文件编译成一个单独的文件vendor.xxxx.js
,并将html替换为:
<script src="scripts/vendor.f5d9f6b9.js"></script>
但是这里的路径是相对的,我想要一个绝对路径。此外,angular应用程序位于我的节点服务器的子目录中(在dashboard/中),所以我使用nignx并重定向必要的内容。我想:
<script src="/dashboard/scripts/vendor.f5d9f6b9.js"></script>
您的问题与usemin有关,请参阅此处的文档:https://github.com/yeoman/grunt-usemin
只需将index.html中的注释替换为:
<!-- build:js(./) /dashboard/scripts/vendor.js -->
这意味着:
<!-- build:PATH_WHERE_TO_FIND_FILES DESTINATION_PATH -->
将ngmin替换为ngAnnotate:
修改你的Gruntfile:
替换:
// ngmin tries to make the code safe for minification automatically by
// using the Angular long form for dependency injection. It doesn't work on
// things like resolve or inject so those have to be done manually.
ngmin: {
dist: {
files: [{
expand: true,
cwd: '.tmp/concat/scripts',
src: '*.js',
dest: '.tmp/concat/scripts'
}]
}
},
ngAnnotate: {
options: {
singleQuotes: true
},
dist: {
files: [{
expand: true,
cwd: '.tmp/concat/scripts',
src: '*.js',
dest: '.tmp/concat/scripts'
}]
}
},
和替换:
grunt.registerTask('build', [
'clean:dist',
'wiredep',
'useminPrepare',
'concurrent:dist',
'autoprefixer',
'concat',
'ngmin',
'copy:dist',
'cdnify',
'cssmin',
'uglify',
'filerev',
'usemin',
'htmlmin'
]);
由:grunt.registerTask('build', [
'clean:dist',
'wiredep',
'useminPrepare',
'concurrent:dist',
'autoprefixer',
'concat',
'ngAnnotate',
'copy:dist',
'cdnify',
'cssmin',
'uglify',
'filerev',
'usemin',
'htmlmin'
]);
运行以下两个命令修改package.json:1. NPM uninstall grunt-ngmin——save2. NPM install grunt-ng-annotate——save
相关文章:
- 请求准备一个文件并返回路径,允许用户在准备好时下载
- 在相对于用户当前 URL 路径的不同路径中设置 Cookie
- 从github url中查找用户、repo和路径
- 当用户使用 JavaScript 单击视图源代码时,如何保护 IMG SRC 路径
- 如何阻止用户在 HTML 文件输入控件中手动编辑文件路径
- hta文件中的javascript用户配置文件相对路径
- 如何允许用户在谷歌地图上绘制路径
- 为简历文件上载获取用户完整文件路径
- 具有多个更新路径的主干用户模型
- Grunt用户转换路径到资产
- 如何触发事件,当用户滚动到页面顶部使用Jquery和路径点
- 在基于用户选择的折线图中重新呈现路径的问题
- 如何使用Javascript检测用户是否绘制了某条路径
- 如何在共享的用户控件中设置相对路径
- 在angular js中,如果用户输入错误的路径并显示正确的URL,它会重定向到主页
- 如何移动图像在固定路径上的用户滚动
- 在svg编辑器中转换路径,方法使用用户输入值绘制
- 在用户滚动时沿弯曲路径移动元素
- 如何获得用户的完整路径's类型=“;文件“;使用jQuery Fileupload
- 获取要在PHP中从用户动态读取的文件路径