如何使用gulp-inject修改脚本文件路径

How to use gulp-inject to modify path of script file

gulpfile.js

gulp.task('index', function() {
    var target = gulp.src('./app/index.html');
    // It's not necessary to read the files (will speed up things), we're only after their paths: 
    var sources = gulp.src(['./app/js/**/*.js'], {
        read: false
    });

    return target.pipe(inject(sources))
        .pipe(inject(gulp.src('./app/js/**/*.js', { read: false }, { ignorePath: '/app/' })))
        .pipe(gulp.dest('./build'));
});

index.html

<body ng-app="kisanApp">
    <ng-view></ng-view>
    <!-- inject:js -->
    <script src="/app/js/app.js"></script>
    <script src="/app/js/directives.js"></script>
    <script src="/app/js/filters.js"></script>
    <script src="/app/js/services.js"></script>
    <script src="/app/js/controller/driverController.js"></script>
    <script src="/app/js/controller/driversController.js"></script>
    <!-- endinject -->
</body>

这里我得到的是 app/js/app.js 而不是 js/app.js。我应该如何修改我的路径以使其完美运行?

如果我理解正确,这将解决您的问题。

var gulp = require('gulp')
inject = require('gulp-inject');

gulp.task('index', function() {
    gulp.src('./app/index.html')
  .pipe(inject(gulp.src('./app/**/*.js', {read: false}), {ignorePath: 'app', addRootSlash: false}))
  .pipe(gulp.dest('./build'));
});