vue-cli3.x 多页面打包引入CDN

entry.js 入口

const glob = require('glob')
const path = require('path')
// 配置pages多页面获取当前文件夹下的html和js
function getEntry (globPath) {
  let [entries, basename] = [{}, '']
  let tmp
  let pathname
  let template
  let filename
  glob.sync(globPath).forEach(function (entry, i) {
    template = entry.split('.')[0] + '.html'
    basename = path.basename(entry, path.extname(entry))
    tmp = entry.split('/').splice(-3)
    pathname = tmp.splice(0, 1) + '/' + basename // 正确输出js和html的路径
    filename = pathname + '.html'
    entries[basename] = {
      entry,
      template,
      filename,
      // chunks: []
      chunks: ['chunk-vendors', 'chunk-common', basename]
    }
  })

  return entries
}

module.exports = getEntry

vue.config.js 配置要引入的cdn

const getEntry = require('./entry.js')
const cdn = { // 引用的CDN地址
  js: ['https://cdn.jsdelivr.net/npm/vue']
}
module.exports = {
  pages: getEntry('src/modules/*/*.js'), // 入口
  chainWebpack: config => {
    const entry = Object.keys(getEntry('src/modules/*/*.js'))
    for (const iterator of entry) {
       config
        .plugin(`html-${iterator}`)
        .tap(args => {
           args[0].cdn = cdn;
           return args
        })
    }
  }
  configureWebpack: (config) => {
    if (isProduction) { // 判断是否是生产环境
      config.externals = { // 需要以cdn引入的模块
         'vue': 'Vue'
      }
    }
  }
}

index.html,遍历cdn引入地址

<!DOCTYPE html>
<html>
<head>
</head>
<body>
  <div id="app"></div>
    <% for (var i in htmlWebpackPlugin.options.cdn && htmlWebpackPlugin.options.cdn.js) { %>
    <script src="<%= htmlWebpackPlugin.options.cdn.js[i] %>"></script>
  <% } %>
</body>

</html>

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Vue.js是一个用于构建用户界面的渐进式JavaScript框架。它通过使用组件化的方式来构建应用程序,使得开发更加模块化和可维护。Vue CLI是Vue.js官方提供的脚手架工具,可以帮助我们快速搭建Vue项目并进行开发、构建和部署。 Vue.config.js是Vue CLI 3.x的配置文件,用于配置Vue项目的构建和开发过程中的各种选项。在Vue.config.js中,我们可以进行各种修改,比如代理设置等。通过修改Vue.config.js,我们可以根据项目需求进行自定义配置,以满足特定的开发和构建需求。 关于CDN(内容分发网络),它是一种用于加速静态资源加载的技术。在Vue项目中,我们可以使用CDN引入Vue.js及其相关的库和插件,以提高页面加载速度和性能。 具体来说,在Vue项目中使用CDN可以通过以下步骤实现: 1. 在HTML文件的<head>标签中添加相应的CDN链接。 2. 在Vue.config.js中进行相关配置,比如配置externals选项来告诉Vue不要将CDN中已经存在的库打包进最终的构建文件。 通过使用CDN,我们可以从远程服务器加载Vue.js及其相关资源,而不需要将它们打包到我们的项目中。这样可以减少我们的构建文件大小,并加快页面加载速度。 注意:使用CDN需要确保你的项目能够访问到CDN链接,否则将无法正常加载相关资源。另外,使用CDN可能会导致一些限制,比如不能使用本地文件的相对路径等。 总之,通过使用Vue.config.js和CDN,我们可以更灵活地配置Vue项目,并提高页面加载速度和性能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值