vue 打包生成json 文件列表
时间: 2023-10-02 18:11:31 浏览: 271
在 Vue 中,打包生成的静态资源文件列表可以通过 webpack 的插件 `webpack-manifest-plugin` 来生成。
首先,在项目中安装 `webpack-manifest-plugin`:
```bash
npm install --save-dev webpack-manifest-plugin
```
然后,在 webpack 的配置文件中引入该插件,并配置输出的文件名:
```javascript
const ManifestPlugin = require('webpack-manifest-plugin');
module.exports = {
// ...
plugins: [
new ManifestPlugin({
fileName: 'manifest.json',
}),
],
};
```
上述配置将在打包时生成一个名为 `manifest.json` 的文件,其中包含了所有打包生成的静态资源文件的信息。
如果你想要在 Vue 的模板中使用该文件列表,可以在 `index.html` 中通过 `script` 标签引入,然后在 Vue 实例中通过访问全局变量 `__webpack_manifest__` 来获取该文件列表。
```html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>My App</title>
</head>
<body>
<div id="app"></div>
<script src="/dist/js/app.js"></script>
<script src="/dist/manifest.json"></script>
<script>
var app = new Vue({
el: '#app',
data: {
manifest: __webpack_manifest__,
},
});
</script>
</body>
</html>
```
现在,你就可以在 Vue 实例中访问 `manifest` 对象来获取打包生成的静态资源文件列表了。例如,你可以遍历该列表,生成一组 `script` 或 `link` 标签来自动加载这些文件:
```html
<div id="app">
<script v-for="file in manifest">
document.write('<script src="' + file.path + '"><\/script>');
</script>
</div>
```
阅读全文