angular.js - webpack打包大型SPA配置問題
問題描述
目前項目是多頁面應用。使用的是angular1.x 前端工具是Webpack。要轉換成SPA。打算使用angular-ui-router做路由管理。問題是把所有的文件打包成一個太大了。想法是只打包成一個第三個類庫的vendor.js和某業務邏輯相關的app.js比如登錄頁面我只想加載vendor.js和login.js登錄后進到dashboard頁面。我也只想加載vendor.js和dashborard.js。類似這樣請問該如何配置angular-ui-router和webpack呢,謝謝。
問題解答
回答1:假設你的目錄結構是這樣
src - common - utils.js - login - index.js - dashboard - index.js 代碼塊
common/utils.js
// 通用模塊,邏輯。console.log(’utils....’)
login/index.js
require(’./common/utils’) // 引入公共模塊// 自己的業務模塊console.log(’login....’)
dashboard/index.js
require(’./common/utils’) // 引入公共模塊// 自己的業務模塊console.log(’dashboard....’)要得到你期望的結果,webpack.config.js 配置如下:
var webapck = require(’webpack’)module.exports = { entry:{login:’./src/login/index.js’,dashboard:’./src/dashboard/index.js’ }, output:{publicPath:’/’,path: __dirname + ’/dist’,filename:’js/[name].js’,chunkFilename:’js/[id].js’ }, plugins:[new webpack.optimize.CommonsChunkPlugin({ // 通過這個模塊,就可以提取公共的模塊 common/utils name:’vendor’, filename: ’[name].js’}) ]}最終打包后的結果
dist - jslogin.jsdashboard.js vendor.js
如上。。。
回答2:參考code splitting
回答3:我現在會用webpack生成所需js了。結合angular-ui-router該怎么引入各個js呢? 謝謝搜到一篇angular按需加載的文章
http://www.cnblogs.com/ys-ys/...,基于ui-router,ocLazyLoad看來能滿足我的需求。謝謝
相關文章:
1. mac連接阿里云docker集群,已經卡了2天了,求問?2. ddos - apache日志很多其它網址,什么情況?3. 上傳圖片老是失敗是什么原因?SAE_TMP_PATH.后面跟的路徑在哪看4. javascript - 關于jquery的ajax post數據的問題5. 前端 - 我有一個建站程序,但是多個文件夾下的HTML模板代碼沒有進行縮進格式化,請問用什么軟件可以批量格式化一下代碼?6. android-studio - Win10下修改Windows用戶文件夾名user,導致Android Studio報錯無法使用7. phpstudy pro小皮面板經常報這個nginx: [emerg] CreateFile【急】8. thinkphp5.1學習時遇到session問題9. angular.js - angular 路由為什么一直請求css和js文件10. javascript - setTimeout的延遲時間,是從什么時間段開始算起的?
