vue-cli项目打包多个与static文件同级的静态资源目录(copy-webpack-plugin插件的使用)

场景

业务要求能够直接通过 “域名+/file”的方式访问静态资源的html,然而产品绝对static暴露在url中不好看又不能直接将html放在static中。所以想到了既然static可以直接访问,那么给他新加几个文件目录应该不是问题。

重点

在webpack.dev.conf.js和webpack.prod.conf.js两个文件中,都有这样一段配置代码:

// copy custom static assets
    new CopyWebpackPlugin([
      {
        from: path.resolve(__dirname, '../static'),
        to: config.build.assetsSubDirectory,
        ignore: ['.*']
      }
    ])
// 作用:将static目录拷贝到打包之后的dist文件下

下面就简单了,照葫芦画瓢,配置好你要拷贝的文件目录即可:

// copy custom static assets
    new CopyWebpackPlugin([
      {
        from: path.resolve(__dirname, '../static'),
        to: config.dev.assetsSubDirectory,
        ignore: ['.*']
      },
      {
        from: path.resolve(__dirname, '../file1'),
        to: 'file1',
        ignore: ['.*']
      },
      {
        from: path.resolve(__dirname, '../file2'),
        to: 'file2',
        ignore: ['.*']
      }
    ])

项目目录只需在与static的同级目录新建对应的file1,file2即可,里面可以放任何你想放的东西,且访问时只需使用绝对路径即可

既然这样可行,那么将通过这种方式将静态站点融入到vue项目中也是可行的,当你一个站点上有很多静态页面时,或者是成品非vue项目代码,只需要通过这种方式即可合并到vue项目中,且只需要在url上加上你定义的file即可。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容