Gulp不创建源Map

46scxncf  于 8个月前  发布在  Gulp
关注(0)|答案(1)|浏览(121)

我正在研究Gulp,并试图为我的JavaScript文件app.js生成源Map,但sourcemaps生成并不像预期的那样工作。我遇到一些old answers建议使用gulp-sourcemaps插件,但Gulp官方文档现在指出,您可以直接通过**{ sourcemaps:在srcdest中,
我写了我的代码gulpfile.js

const { src, dest } = require("gulp");
const uglify = require("gulp-uglify");

var paths = {
  scripts: {
    src: "src/assets/js/app.js",
    dest: "./dist/assets",
  }
};
exports.default = function copyAssets(cb) {
  
    src(paths.scripts.src , {sourcemaps: true})
      .pipe(uglify())
      .pipe(dest("dist/assets/"), { sourcemaps: '.'})   
 cb()
}

除了没有生成JavaScript文件的源Map之外,一切工作正常。
这是一个目录结构。

├─ src/
│  ├─ index.html
│  ├─ assets/
│  │  ├─ css/
│  │  │  ├─ stylesheet.css
│  │  ├─ js/
│  │  │  ├─ app.js
├─ dest/
│  ├─ assets/
│  │  ├─ stylesheet.css
│  │  ├─ app.js
│  ├─ index.html

这是app.js中的一段“愚蠢”代码

let message = document.querySelector(".gulp-welcome-message");
let title = document.querySelector("title");

message.addEventListener("click", () => {
  message.innerText =
    message.innerText === "Hello Gulp 🥤" ? "Hello Gulp 🥛" : "Hello Gulp 🥤";
  title.innerText =
    title.innerText === "Hello Gulp 🥛" ? "Hello Gulp 🥤" : "Hello Gulp 🥛";

    console.log(title.innerText);
});

环境信息:

Gulp Version: CLI version: 2.3.0, Local version: 4.0.2
Node.js Version: v20.4.0
Operating System: Windows 10

如何解决此问题?有什么想法吗?

oalqel3c

oalqel3c1#

我发现了这个问题,错误是在使用dest时的圆括号闭包中。
.pipe(dest(“dist/assets/”,{ sourcemaps:'.'})
根据官方文档**dest**,正确的语法是:
dest(目录,[选项])
解决方案是将选项作为第二个参数传递,如下所示:

.pipe(dest("dist/assets/", { sourcemaps: '.'}));

相关问题