如何将文件从公共文件复制到dist?

时间:2018-05-19 21:01:54

标签: javascript webpack

我有一个公共文件夹,如下所示:
enter image description here

构建项目后
"prod": "npm run mlbuild | npm run build"

dist文件夹如下所示:

enter image description here

但我遗漏了config.jsonfavicon.icokeycloak.json

如何在dist期间将这些文件存入build文件夹?

我试过了:

  {
    test: /\.(json)(\?v=\d+\.\d+\.\d+)?$/,
    use: [{
      loader: 'file-loader',
      options: {
        name: '[name].[ext]'
      }
    }]
  }

但我想,我必须提一下这个文件夹。

1 个答案:

答案 0 :(得分:1)

您可以设置插件copy-webpack-plugin来复制这些文件,将其添加到您的webpack.config.js中:

plugins: [
    new CopyWebpackPlugin([{ from: 'public' }])
  ]

以下要求:const CopyWebpackPlugin = require('copy-webpack-plugin')

另一个解决方案,如果你不想使用webpack,就是在构建之后使用包将这些文件复制到dist文件夹,添加以下脚本:

"postprod": "cpx \"public/*\" dist"

并将包cpx添加到devDependencies列表中,运行npm install cpx --save-dev。 因为您向post添加了postprod前缀,所以每次运行prod脚本时,npm都会自动运行postprod,因此会复制所有公开的文件文件夹到dist文件夹。您可以阅读有关npm脚本here

的更多信息