将配置文件复制到webpack中的dist目录
问题描述:
我想从webpack的entry
或output
目录外复制文件。我有要求有一个属性文件是完全分开的捆绑。将配置文件复制到webpack中的dist目录
所以我有这样的结构:
/project
/config
properties.js
/dist
bundle.js
webpack-created-index.html
/src
index.html-with-custom-script-tag
...source files and folder here
我想有我webpack.config复制源代码管理的config文件夹(不带其内容摆弄),所以我DIST的文件夹看起来像这样:
/dist
/config
properties.js
bundle.js
webpack-created-index.html
我希望能有我的那properties.js文件,像这样的WebPack创建的index.html负荷:
<script type="text/javascript" src="../config/properties.js"></script>
我的浏览器显示404,即使我更改<script>
标记中的相对路径以返回dist
并遍历文件系统,直到它到达src
中的config
文件夹。
我webpack.config.js进入/输出如下:
config.entry = {
app: './src/app.js'
};
config.output = {
path: __dirname + '/dist',
publicPath: 'http://localhost:8080/',
filename: '[name].bundle.js'
};
是否有可能用的WebPack要做到这一点,或者我需要携带的东西一样一饮而尽或节点脚本来做到这一点?我的强烈的偏好将用webpack来完成此任务,而不必使用外部脚本或库将构建复杂化。
答
您可以使用节点模块cpy-cli。
npm install cpy-cli
复制src文件夹内的所有.html文件到DIST和保存路径结构
cpy '**/*.html' '../dist/' --cwd=src --parents
我有一个简单的脚本,照顾这对我
"copy-files": "cpy \"**/index.html\" favicon.ico \"../dist\" --cwd=src --parents"
要自动注入文件使用html-webpack-plugin
npm install html-webpack-plugin --save-dev
有两个问题:如何将该脚本连接到正常的webpack绑定进程?我知道我可以手动将它复制到...我正在寻找一种方法让webpack来做到这一点。另外,我没有在html-webpack-plugin中看到任何内容,以指明我如何具体告诉它哪些文件要添加到index.html。 – tengen
1.我使用它package.json在那里很容易,但如果你想在webpack中使用它,那么你不需要它,你可以写一些服务器端js使它成为2.如果你阅读文档有东西提到关于注入。 –
我能够使用“复制文件”的想法成功地将文件复制到“物理”上,但是当运行开发服务器时,webpack似乎并没有意识到它。我相信挑战在于,如果我只是使用脚本将文件复制到“dist”文件夹,那么当运行webpack-dev-server时,webpack就没有该文件存在的概念。 – tengen