【问题标题】:glup.inject {relative:true} still creates a rootSlashglup.inject {relative:true} 仍然创建一个 rootSlash
【发布时间】:2017-09-05 08:24:56
【问题描述】:

我正在使用 gulp 任务来注入我的 javascript 文件:

gulp.task('index', function () {
var target = gulp.src('./public/index.html');
var sources = gulp.src(config.appjs.concat(config.appcss), {read: false} );

return target.pipe(inject(sources),
    {

        relative: true,
        addRootSlash : false
        // ignorePath: /[^/]/
        // ignorePath: "/(\.\.\/)?\//",

        // ignorePath: '/public'

    })
    .pipe(wiredep({
           ignorePath: "^/"
     }))
    .pipe(gulp.dest('./dev'))
    .pipe(browserSync.stream());
});

但是我仍然看到/public 而不是

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

这里:

<!-- inject:js -->
<script src="/public/js/config/app.js"></script>
<script src="/public/js/components/home-component.js"></script>
<script src="/public/js/components/login-component.js"></script>
<script src="/public/js/components/progress-bar-component.js"></script>

我该如何解决这个问题?

【问题讨论】:

    标签: javascript html gulp


    【解决方案1】:

    您错误地传递了选项。现在您将它们传递给pipe(),但它们需要进入inject()。应该是这样的:

    gulp.task('default', function () {
    
        var target = gulp.src('./public/index.html');
        var sources = gulp.src('./public/**/*.js', { read: false });
    
        return target.pipe(inject(sources, { relative: true, addRootSlash: false }))
            .pipe(wiredep({
                ignorePath: "^/"
            }))
            .pipe(gulp.dest('./dev'))
            .pipe(browserSync.stream());
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-12-11
      • 1970-01-01
      • 1970-01-01
      • 2014-07-01
      • 2020-07-22
      • 2023-04-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多