用gulp替换变量

时间:2016-08-13 10:21:02

标签: javascript gulp

src目录中的gulp-replace替换变量是否很好?

我有srcbuild个目录。在src内,我正在编写es6 JS代码,应编译并缩小到build目录。

src目录中,我有角度配置文件。

$routeProvider
    .when('/', {
        controller: 'HomeController',
        controllerAs: 'HomeCtrl',
        templateUrl: '/BUILD_DIR/app/partials/home.html'
    })

在构建过程中,gulp-replace将使用适当的目录名替换所有文件中的BUILD_DIR var,在我们的例子中为build

在未编译的js代码中编写这些变量是否可以?如果没有,怎么用另一种方式呢?

1 个答案:

答案 0 :(得分:1)

没关系,只要你确定没有副作用(你在ALL文件中提到过,这对我来说很危险)。您最好列出要完成此替换的文件,以确保它不会替换您不想要的内容。 e.g。

gulp.task('replace', function() {
    var required_files = [
        '/src/js/app.js',
        '/src/js/controllers.js'
    ];
    return gulp.src(required_files, {base: '/src'})
         .pipe(Useref())//replacements here
         .pipe(gulp.dest('/build'));
});

而不是

gulp.task('replace', function() {
    return gulp.src('/src/*.*')
         .pipe(Useref())//replacements here
         .pipe(gulp.dest('/build'));
});