【问题标题】:Not able to run simple babel from src folder to dist无法从 src 文件夹运行简单的 babel 到 dist
【发布时间】:2017-07-09 09:43:30
【问题描述】:

我使用以下代码进行 babel 代码转换。 我的应用程序的构建如下

-src
 -- bin
   ---www
 -- routes
   ---index1.js
   ---index2.js
 -- config.json
-package.json 

现在我希望将所有这些文件转译到 dist 文件夹

我使用下面的 gulp

gulp.task('es6', () => {
    return gulp.src(['src/**/*.js','./src/**/www','./src/**/*.json'])
        .pipe(babel({
            presets: ['es2015']
        }))
        .pipe(gulp.dest('dist'));
});

这会创建新的 dist 的 dist,如下所示,但没有 config.json 文件,为什么?

-dist
 -- bin
   ---www
 -- routes
   ---index1.js
   ---index2.js

当我运行 gulp 文件时出现错误 找不到模块'../config.json',知道如何解决吗?

我挣扎了将近 3 天,我想我在这里错过了一些基本的东西......:( 这是项目示例,您可以执行 npm install 并运行 gulp 来查看错误...

https://drive.google.com/open?id=0B8fd7J9aXGXaQng1ZFJkU2Z4OUk

【问题讨论】:

  • 如果不通过 Babel 管道,文件是否会被复制?由于 JSON 不是有效的 JS,我可能假设 Babel 会在该文件上抛出错误。
  • 什么意思?我应该将它与其他 gulp 任务一起复制吗?
  • @loganfsmyth 当我用 gulp 复制它时,它的工作正常,那为什么会这样呢?

标签: javascript node.js gulp babeljs glob


【解决方案1】:

下载,它似乎只是 babel-gulp 的一个问题,它无法识别 .json

像这样编辑,它可以工作

gulp.task('es6', () => {
    return gulp.src(['./src/**/*.js','./src/**/www'])
        .pipe(babel({
            presets: ['es2015']
        }))
        .pipe(gulp.dest('dist'));
});

gulp.task('json', () => {
    return gulp.src(['./src/*.json'])
        .pipe(gulp.dest('dist'))
})

然后

gulp.task('default', [ 'es6', 'json', 'nodemon'], () => {
    console.log("Done");
});

【讨论】:

    【解决方案2】:
    './src/**/*.json'
    

    但是你的配置文件是 src 的直接子文件,所以你应该这样做:

    './src/*.json'
    

    【讨论】:

    • 谢谢 我试过了,但我遇到了同样的问题?您是否尝试下载该应用程序?对你有用吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-30
    • 1970-01-01
    • 1970-01-01
    • 2018-12-04
    • 2021-10-26
    • 2022-10-12
    相关资源
    最近更新 更多