Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Webpack 网页包文件加载器操纵输出路径_Webpack_Gulp_Copy_Webpack 2_Webpack File Loader - Fatal编程技术网

Webpack 网页包文件加载器操纵输出路径

Webpack 网页包文件加载器操纵输出路径,webpack,gulp,copy,webpack-2,webpack-file-loader,Webpack,Gulp,Copy,Webpack 2,Webpack File Loader,假设我有一个简单的加载程序,它应该只是将一个文件从源代码移动到部署,我只是复制了简单化状态的规则 { test: /\.cshtml$/, use : [{ loader : 'file-loader', options : { name : '[path][name].[ext]', // context :'', // outputPath : ''

假设我有一个简单的加载程序,它应该只是将一个文件从源代码移动到部署,我只是复制了简单化状态的规则

{
    test: /\.cshtml$/,
    use : [{
        loader : 'file-loader',
        options :  {
            name : '[path][name].[ext]',  
            // context :'',
            // outputPath : ''  
        }
    }]
}
我已经尝试了一百万种不同的组合,基本上,一旦文件加载器处理它,它就会将其复制到webpack config中的
输出.path,路径如下所示:

/outputpath/thenfilefromloader/to/folder/goes/here/nameoffile.cshtml

我想做的是,或多或少地在
进入后拆分字符串
并使用输出路径concat:

/outputpath/goes/here/nameoffile.cshtml


这甚至可以实现吗?基本上,我正在尝试摆脱gulp,这些文件只是用gulp复制的,就是这样,但是路径在复制之前就被操纵了。

如果我得到了您想要做的,用定义的路径替换
[path]
占位符应该可以:

{
    test: /\.cshtml$/,
    use : [{
        loader : 'file-loader',
        options :  {
            name : 'goes/here/[name].[ext]',  
        }
    }]
}
您还可以添加一个
hash
占位符以避免文件名冲突:

name : 'goes/here/[name].[hash].[ext]',

是的,但是它需要对每个文件都是动态的,有一些基于目录的规则文件加载器给了你很大的灵活性。我从来没有尝试过自己,但它也应该接受一个函数,因为它在引擎罩下使用。