繁体   English   中英

“文件”参数的值从何而来

[英]Where does the value of “file” argument come from

这是来自gulp文件的代码片段。 我想了解参数“ file”传递给内部函数的理解。 更重要的是,我想了解这个习语,因为我经常在Javascript中看到它。 我的猜测是,“ tsResult.js”会在此Typescript项目中遍历各种javascript文件,而“ file”参数就是每个这样的文件。 我怎样才能在以后及以后破译这种用法

gulp.task('scripts', ['clean'], () => {
const tsResult = tsProject.src().pipe(sourcemaps.init()).pipe(tsProject());
  return tsResult.js.pipe(sourcemaps.write({
    includeContent: false,
    sourceRoot: function (file) {
      return path.relative(path.dirname(file.path), file.base);
    }
  }))
    .pipe(gulp.dest(OUTPUT_FOLDER));
});

许多JS库大量使用了称为依赖注入的设计模式。

基本上, gulp-sourcemaps使您可以选择覆盖如何确定源根(文件所在的根URL)。

gulp-sourcemaps文档中

设置源文件的托管位置(在includeContent设置为false时使用此位置)。 这通常是URL(或绝对URL路径),而不是本地文件系统路径。 默认情况下,源根目录是'',或者在设置destPath的情况下,从源映射到源基本目录的相对路径(这在许多开发环境中都应适用)。 如果使用相对路径(空字符串或以。开头的路径),则将其解释为相对于目标的路径。 该插件将其重写为相对于每个源映射的路径。

调用sourceRoot函数,传入当前正在处理的文件,并期望该文件返回根路径。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM