91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

vue-cli 3.0 自定義vue.config.js文件,多頁構建的方法

發布時間:2020-10-24 16:35:03 來源:腳本之家 閱讀:186 作者:franks_t_d 欄目:web開發

使用自己基于vue-cli 2.X改造的前端多頁腳手架有近1年多時間了,一直沒機會升級3.0版本

開始零零碎碎開始寫一些功能,順便分享一下

const path = require('path')
const glob = require('glob')
/** 獲取多頁的入口腳本和模板 */
const getPages = (() => {
 const [
 globPathHtml,
 globPathJs,
 pages,
 tempSet
 ] = [
 ['./src/modules/**/index.html', 'template'], // 入口模板正則
 ['./src/modules/**/main.js', 'entry'], // 入口腳本正則
 Object.create(null),
 new Set()
 ]
 const getMultiPageConf = (globPath, keyName) => {
 let [fileList, tempArr, modName] = [glob.sync(globPath), [], null]
 if (fileList.length !== 0) {
  for (let entry of fileList) {
  tempArr = path.dirname(entry, path.extname(entry)).split('/')
  modName = tempArr[tempArr.length - 1]
  if (tempSet.has(modName)) {
   Object.assign(pages[modName], { [keyName]: entry, 'filename': `${modName}.html` })
  } else {
   Reflect.set(pages, modName, { [keyName]: entry }) && tempSet.add(modName)
  }
  }
  return true
 } else {
  if (keyName === 'template') {
  throw new Error('無法獲取多頁入口模板')
  } else if (keyName === 'entry') {
  throw new Error('無法獲取多頁入口腳本')
  } else {
  throw new Error('無法獲取多頁信息')
  }
 }
 }
 try {
 while (getMultiPageConf(...globPathHtml) && getMultiPageConf(...globPathJs)) return pages
 } catch (err) {
 console.log('獲取多頁數據錯誤:', err)
 }
})()
console.log('pages: ', getPages)

打印結果:

pages: { mod1:
 { template: './src/modules/mod1/index.html',
  entry: './src/modules/mod1/main.js',
  filename: 'mod1.html' },
 mod2:
 { template: './src/modules/mod2/index.html',
  entry: './src/modules/mod2/main.js',
  filename: 'mod2.html' },
 mod3:
 { template: './src/modules/mod3/index.html',
  entry: './src/modules/mod3/main.js',
  filename: 'mod3.html' } }

使用:

/** vue.config.js */
module.exports = {
 ...
 pages: getPages
 ...
}

以上這篇vue-cli 3.0 自定義vue.config.js文件,多頁構建的方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

肥东县| 清水河县| 雅安市| 武夷山市| 西吉县| 道孚县| 怀化市| 巴彦淖尔市| 亚东县| 浦东新区| 红桥区| 班戈县| 灌阳县| 彭山县| 安平县| 璧山县| 尼玛县| 阳曲县| 明水县| 浙江省| 桓台县| 黄梅县| 丹寨县| 普兰县| 彭州市| 莱芜市| 铁力市| 多伦县| 任丘市| 丰镇市| 台中市| 西林县| 肇东市| 精河县| 定陶县| 双辽市| 吴旗县| 汶上县| 建水县| 阿鲁科尔沁旗| SHOW|