$未在Gulp任务中定义

时间:2015-07-26 14:15:12

标签: gulp asp.net-core gulp-inject

我有以下package.json文件:

"jquery": "2.1.4",

当我为bower.json运行此任务时,我收到错误:

  

[16:11:31]使用gulpfile C:\ MyProject \ src \ MyProject \ Gulpfile.js
  [16:11:31]开始'wiredep'...
  [16:11:31]将./bower_components/中的Bower组件放入./Views/Shared/_Layout.cshtml中   [16:11:31]在5.7毫秒后,'wiredep'出错了   流程以代码1终止。
  [16:11:31] ReferenceError:$未定义

为什么$未定义,如何定义?

我尝试将localhost:8004添加到package.json中的devDependencies。

2 个答案:

答案 0 :(得分:0)

通过阅读gulp-inject documentation的gulpfile.js部分,我发现我不需要在它前面加$。需要注入和引用它直接工作。如,

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

gulp.task('inject', ['wiredep'], function () {
    log('Wire up the css and js into ' + paths.layoutPage);
    return gulp
        .src(paths.layoutPage)
        .pipe(inject(gulp.src([paths.js, paths.css], { read: false }), { ignorePath: project.webroot }))
        .pipe(gulp.dest(paths.layoutPagePath));
});

直接使用$我认为可以使用var $ = require('jquery')并将jquery添加到package.json。如果我错了,请纠正我。

答案 1 :(得分:-2)

刚才我的项目也发生了这种现象。最后我发现gulp缺少一个名为' gulp-load-plugins&#39 ;; 安装之后我们应该声明它将package.json中的所有插件放入$ charactor;它是var $ = require(' gulp-load-plugins')();