這裡是打包篇
使用的是requirejs的r.js進行打包
思路是,通過entrance.js裡面的require.config進行專案的初打包
因為router.js和store.js裡面的引用是動態生成的,所以r.js無法對其進行處理,這裡我們用到了nodejs來進行檔案整合
具體看**
node2build.js
var fs = require('fs')
var cp = require('child_process')
var __config__ = require('./../dist/config')
var fromdir = (process.ar**.length >= 3
? process.ar**[2]
? process.ar**[2]
: ''
: 'dist')
var todir = (process.ar**.length >= 4
? process.ar**[3]
? process.ar**[3]
: ''
: 'pack')
var base = ,
// uglify2: },
optimizecss: 'standard', // "standard",
paths: ,
map:
},modules: [
]}// 這裡是通過配置檔案來組裝配置資訊對設定了同步的模板進行打包
base.modules[0].include = base
.modules[0]
.include
.concat(__config__.modules.filter(o => o.store).map(o => ))
base.modules[0].include = base
.modules[0]
.include
.concat(__config__.modules.filter(o => o.sync).map(o => ))
base.modules[0].include = base
.modules[0]
.include
.concat(__config__.modules.filter(o => o.sync).map(o => ))
fs.writefilesync('build/b.js', '(' + json.stringify(base) + ')')
var spawn = cp.spawn
var exec = cp.exec
//這裡是通過控制項臺執行r.js的打包命令
node2build = spawn('node', ['node_modules/requirejs/bin/r.js', '-o', 'build/b.js'])
node2build
.stdout
.on('data', function (data) )
node2build
.stderr
.on('data', function (data) )
//這裡是控制台執行完成後進行的檔案合併處理
node2build.on('exit', function (code, signal) )`)
})
基於requirejs的vue2專案 一
專案截圖 專案演示位址 該專案主要是解決 如何讓不了解前端構建,並負責大部分業務邏輯的後端 開發出 乙個單頁應用 覺得有用請給個推薦,謝謝 最近做了一次小更新,配置檔案可以配置模組是否非同步載入以及是否關聯store 公司推進手機端專案,但目前開發模式依舊是後端渲染為主,後端開發對前端的自動化打包與...
使用RequireJs的好處
1 js檔案都是按照順序從上到下依次同步載入的,這樣的寫法有很大的缺點。首先,載入的時候,瀏覽器會停止網頁渲染,載入檔案越多,網頁失去響應的時間就會越長 2 其次,由於js檔案之間存在依賴關係,因此必須嚴格保證載入順序 比如上例的a.js要在b.js的前面 依賴性最大的模組一定要放到最後載入,當依賴...
基於vue的UI框架
1 餓了麼 vue 2.0後台ui框架 2 iview元件庫 iview 主要服務於 pc 介面的中後台業務,很優秀的元件庫,可惜不適合移動端 4 mint ui 餓了麼移動端元件庫 由餓了麼前端團隊推出的 mint ui 是乙個基於 vue.js 的移動端元件庫 5 vue admin 管理面板u...