javascript - 根据环境切换 HTML 文件中的资源

标签 javascript gulp

我想根据我的开发环境替换 HTML 文件中的 JavaScript 引用。例如,我想从这里开始:

<!-- dev -->
<script src="app.js"></script>

至此

<!-- prod -->
<script src="dist/app.min.js"></script>

有什么方法可以使用 Gulp 或其他构建工具来实现这一点吗?

最佳答案

您可以使用gulp-html-replace来做到这一点和 yargs

your-file.html

<!-- build:js -->
<script src="app.js"></script> 
<!-- endbuild -->

gulpfile.js

var gulp = require('gulp'),
    $ = require('gulp-load-plugins')(),
    args = require('yargs').argv;

    gulp.task('default', function() {
        var filePath = (args.env === 'prod' ? 'dist/app.min.js' : 'app.js')
        return gulp.src('your-file.html')
            .pipe($.htmlReplace({js: filePath}))
            .pipe(gulp.dest('./dist'));
    });

> gulp --env prod 将输出 dist/your-file.html:

<script src="dist/app.min.js"></script>

gulp 将输出 dist/your-file.html:

<script src="app.js"></script>

关于javascript - 根据环境切换 HTML 文件中的资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39134719/

相关文章:

css - 我的 gulp iconfont 呈现得像一个丑陋的实时跟踪图标

gulp - 使用 SystemJS 的 Angular2 "Getting Started"部署

javascript - 使 gulpfile : getting an error when call gulp. 并行

javascript - JS : Sort List Items based on data-element

javascript - 如何简化重复的函数

JavaScript 数组和循环

javascript - 主干 Web 应用程序架构 - 最佳实践

javascript - 从 JSON 数组中确定最高值

javascript - 使用 gulp 将外部库移动到 wwwroot 文件夹

javascript - Gulp uglify 无法处理箭头函数