Javascript 用gulp替换变量
在Javascript 用gulp替换变量,javascript,gulp,Javascript,Gulp,在src目录中用gulpreplace替换变量是一种好方法吗 我有src和build目录。在src中,我正在编写ES6JS代码,该代码应该编译并缩小到build目录中 在src目录中,我有一个角度配置文件 $routeProvider .when('/', { controller: 'HomeController', controllerAs: 'HomeCtrl', templateUrl: '/BUILD_DIR/app/partia
src
目录中用gulpreplace替换变量是一种好方法吗
我有src
和build
目录。在src
中,我正在编写ES6JS代码,该代码应该编译并缩小到build
目录中
在src
目录中,我有一个角度配置文件
$routeProvider
.when('/', {
controller: 'HomeController',
controllerAs: 'HomeCtrl',
templateUrl: '/BUILD_DIR/app/partials/home.html'
})
在构建过程中,gulp replace将用适当的目录名替换所有文件中的BUILD_DIR var,在我们的例子中是BUILD
在未编译的js代码中编写这样的变量可以吗?如果没有,怎么用另一种方法处理呢?没关系,只要你确定不会有副作用(你在所有文件中都提到过,这对我来说很危险)。你最好列出你想替换的文件,以确保它不会替换你不想要的东西。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'));
});
不是真的。定义路由的文件也应该在build目录中。因此,更改路径没有任何意义。此文件也在build dir中。但是已经替换了BUILD_DIR。不过有一个问题。。。您是否从src目录测试代码?最好运行一个gulpwatch并始终推送到build/dest目录,这样就不需要替换了。它就是这样工作的。因此,本质上,在浏览器中,我正在使用builddir中的代码。在src中,我只写了code.oops,我又来了。如果我下面的回答对你来说很酷,你能把它标记为接受吗?问题显示了一个答案,但没有一个被接受,所以我打开了它,忘记了我以前已经回答过。是的,我们有一个列表,列出了所有要替换的文件。Useref()做什么?@Notflip您可以在这里阅读更多有关它的信息: