javascript - Browserify 添加不需要的目录

标签 javascript gulp browserify

第一次设置gulp。我已经正确编译了文件,只是将它们粘贴在错误的位置,而且我不太清楚要更改什么才能使其正确。

编译后,我让它添加 .concaveor.js 后缀,然后我希望它将它们放置在/scripts 目录中。但它把它们放在/scripts/src/js/中——它添加了几个子目录。原始开发文件本身位于单独位置的 src/js/目录中,但我不希望它继续存在。这是我的 gulp 设置:

module.exports = function() {
    var files = [
        './src/js/dashboard.js',
        './src/js/pages.js',
        './src/js/poll.js'
    ];

    var tasks = files.map(function(entry) {
        return browserify({ 
            entries: [entry],
            paths: ['./node_modules', './src/js/']
        })
        .bundle()
        .pipe(source(entry))
        .pipe(rename({
            extname: '.conveyor.js'
        }))
        .pipe(gulp.dest('../scripts/')); 
    });

    return es.merge.apply(null, tasks);
};

按照我的理解,"file"是它要编译的所有文件。 “paths”允许您指定您的 require 语句可以相对的目录,这样您就不必执行一堆句点正斜杠。然后“dest”是您希望文件结束的位置。但我显然误解了一些东西。

最佳答案

罪犯在这里

.pipe(source(entry)) 

entry 设置为您用于文件路径的确切路径。因此出现了重复。

其中的

source() 不是文件的源,但最终是创建的文件。

您可能希望修改对象以仅提供文件名作为条目,并且源路径是分开的。另外,我认为您可以删除 rename 方法。

关于javascript - Browserify 添加不需要的目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31602034/

相关文章:

javascript - 如何在vue js下拉列表中设置预选值

javascript - Gatsby 客户端重定向到外部 URL 在 Netlify 上不起作用

javascript - 如何为 gulp 编写管道序列?

javascript - 处理 angularjs 测试中的依赖关系

javascript - 当将 dropzone 与 browserify 一起使用时, $(...).dropzone 不是一个函数

javascript - browserify 抛出错误 : Unexpected character '�' (1:0) while parsing file: image. png

javascript - Meteor Collection Transform : is it done on the server or on the client? 或者它取决于

javascript - Solidity 和 web3 sha3

javascript - gulp 错误 : Cannot find module 'jshint/src/cli'

backbone.js - Webpack 开发服务器无法加载嵌套 url(GET 404 错误)