【问题标题】:Gulp Concat JS results in require is not definedGulp Concat JS 导致 require 未定义
【发布时间】:2016-09-01 08:31:19
【问题描述】:

我有使用 gulp 的项目。

我正在尝试将 jquery、jquery ui 和引导程序放入一个名为 vendor.js 的文件中。

这很好,但是当我运行“gulp serve”从项目的 dist 文件夹运行项目时,我得到了错误

ReferenceError: 要求未定义 http://localhost:3000/assets/toolkit/scripts/vendor.js 6号线

var jQuery = require('jquery');

gulp.task('vendor-js', function() {
       return gulp.src(['src/assets/toolkit/scripts/vendor/jquery.min.js', 
       'src/assets/toolkit/scripts/vendor/jquery-ui.js', 
       'src/assets/toolkit/scripts/bootstrap/bootstrap.min.js' ])
       .pipe(concat('vendor.js'))
       .pipe(gulp.dest('dist/assets/toolkit/scripts/'));
}); 

文件夹结构

dist\assets\toolkit\scripts

dist\assets\toolkit\styles

dist\assets\toolkit\images

dist\pages

index.html

为什么会这样?我看遍了,没有运气!我见过类似的问题,但都与反应有关?

谁能帮忙?

谢谢

尼克

【问题讨论】:

  • 能否提供您的gulp serve 任务详情?
  • 添加到原帖
  • 你能添加你的文件夹结构吗?
  • 可以但不确定它的相关性如何? js 文件加入并加载正常。我可以看到它并查看它。添加结构
  • 如果我将每个文件单独包含在我的 html 文件中,它可以正常工作,但 jquery-ui 仍然会引发相同的错误

标签: javascript jquery gulp concat


【解决方案1】:

最终设法让这个工作,所以我想我会发布我的解决方案。

我恢复使用内置的 toolkit.js 文件来要求每个依赖项。在本例中为 Jquery、Jquery Ui、Bootstrap Sass 和 Chart Js。

在我的 toolkit.js 文件中,我包含了

window.$ = window.jQuery = require('jquery'); require('jquery-ui'); require('bootstrap-sass'); require('chart.js');

这会被我的 Gulp 任务连接起来。

密钥是window.$ = window.jQuery = require('jquery');

而不是

require('jquery');

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-11-03
    相关资源
    最近更新 更多