摘要:導語下文實戰之后臺管理系統開發二該文章將從頭到尾梳理我是如何使用開發一個后臺管理項目的,我會將自己遇到的問題貼出,希望可以幫助到其他人。構建項目框架準備對于大陸用戶,建議將的注冊表源設置為國內的鏡像,如淘寶鏡像,可以大幅提升安裝速度。
1. 導語
下文:Vue 2.x 實戰之后臺管理系統開發(二)
2. 開發前須知該文章將從頭到尾梳理我是如何使用 Vue 2 開發一個后臺管理項目的,我會將自己遇到的問題貼出,希望可以幫助到其他人。
我的后臺管理系統項目運用了如下框架/插件:
Vue 2.x —— 項目所使用的 js 框架,我所使用的版本是:2.1.10
vue-router 2 —— Vue 2.x 配套路由,我所使用的版本是:2.3.0
Element —— UI 框架,餓了么出品,我所使用的版本是:1.2.8
Echarts —— 圖表插件,百度出品,我所使用的版本是:3.4.0
在 UI 框架的選擇上,除了 Element,iView 也不錯,大家可以按需選擇。
對于所使用的框架/插件,盡可能先快速過一遍文檔,這樣可以知道有什么現成的東西可以使用,避免自己做多余的工作。
3. 構建項目框架 準備對于大陸用戶,建議將 npm 的注冊表源設置為國內的鏡像,如 淘寶 NPM 鏡像,可以大幅提升安裝速度。
運行如下語句即可使用淘寶鏡像:
npm install -g cnpm --registry=https://registry.npm.taobao.org
使用方法為:將 npm 改為 cnpm
示例:npm install => cnpm install
根據 官方指南 執行如下命令行語句:
# 安裝 vue $ cnpm install vue # 全局安裝 vue-cli,該工具提供開箱即用的構建工具配置 $ cnpm install --global vue-cli # 創建一個基于 webpack 模板的新項目 my-project(項目名稱) $ vue init webpack my-project # 進入項目目錄 $ cd my-project # 安裝依賴 $ cnpm install # 運行項目(不需要使用到下載功能時,沒有必要使用 cnpm) $ cnpm run dev # 或者(效果一樣) $ npm run dev
在 Use ESLint to lint your code? (Y/n) 這一項,如果不打算使用語法檢測,可以直接選擇 n,如果決定安裝但是又暫時不想啟用,后文有如何禁用的說明。
這時你的瀏覽器會自動打開 localhost:8080 頁面,說明項目環境搭建成功,我們已經有了一個基于 webpack 模板的項目框架。
可能遇到的問題問題:
運行 npm run dev 后報錯:
To use this template, you must update following to modules: npm: 2.15.1 should be >= 3.0.0
遇到這個問題說明你的 nodejs 版本也不高,因此最好更新 node 版本及 npm 版本。
解決:
升級 node 的話直接重新安裝一個新版本,安裝包 這里 下載。
升級 npm 的話可以直接運行命令行語句:
cnpm install npm@latest -g
參考:node 安裝及 npm 升級方法
項目結構# 備注項為 webpack 模板內置。
## 備注項為按照個人喜好新增的文件夾/文件。
. ├── build/ # webpack config files / webpack 配置文件 │ └── ... ├── config/ │ ├── index.js # main project config / 項目主要配置 │ └── ... ├── src/ # 主要的項目開發文件都在這個目錄下: │ ├── main.js # app entry file / 應用入口文件 │ ├── App.vue # main app component / App 父組件 │ ├── components/ # ui components / 可復用的 ui 組件 │ │ └── ... │ ├── assets/ # module assets (processed by webpack) / 模塊資源(經過 webpack 處理,如文件合并,圖片壓縮等) │ │ └── ... │ ├── page/ ## 以頁面為單位的 .vue 文件 │ │ ├── index.vue ## 一級 router-view,頂部導航欄和左側側邊導航欄 │ │ ├── 404.vue ## 404 頁面 │ │ ├── menu1/ ## 二級 router-view,導航切換后的頁面內容 │ │ │ └── ... │ │ └── menu2/ ## 按照菜單項創建文件夾對文件進行組織管理 │ │ └── ... │ └── router/ │ └── index.js # 路由配置文件 ├── static/ # pure static assets (directly copied) / 純靜態資源(直接拷貝使用,不經過 webpack 處理) ├── .babelrc # babel config ├── .eslintrc.js # eslint config ├── .editorconfig # editor config ├── index.html # index.html template ├── package.json # build scripts and dependencies └── ...
參考:webpack 模板項目結構
相關文檔官網安裝指南
vue-cli
vuejs-templates: webpack
問題:
當你隨便寫了一點代碼然后點擊保存后,瀏覽器中會顯示如下報錯信息:
那是因為項目默認開啟了 Eslint 功能,代碼編寫不規范就會報錯。
解決:
可以這樣禁用 Eslint:
build/webpack.base.conf.js
module: { rules: [ // { // test: /.(js|vue)$/, // loader: "eslint-loader", // enforce: "pre", // include: [resolve("src"), resolve("test")], // options: { // formatter: require("eslint-friendly-formatter") // } // }, { test: /.vue$/, loader: "vue-loader", options: vueLoaderConfig }, ... ] },
直接注釋掉相關規則就可以了。
Elementnpm 安裝 Element:
cnpm i element-ui -S
引入 Element:
官方文檔:引入 Element
可以完整引入也可以按需引入,為了項目的大小考慮,還是選擇按需引入比較好。
按照官方的使用說明做,就能成功將 Element 引入項目,這里就不照搬文檔了。
在根據官方指南安裝了 babel-plugin-component 并修改了 .babelrc 文件后,針對 按需引入 的方式舉個例子:
#1 拷貝需要使用的組件代碼
下拉菜單 黃金糕 獅子頭 螺螄粉 雙皮奶 蚵仔煎
從上面的代碼段中可以看出,我們需要引入三個組件:el-dropdown,el-dropdown-menu 和 el-dropdown-item。
#2 引入組件
在 main.js 中寫入以下內容:
// 引入組件 import { Dropdown, DropdownMenu, DropdownItem } from "element-ui" // 使用駝峰方式書寫組件名即可 // 使用組件 Vue.use(Dropdown) Vue.use(DropdownMenu) Vue.use(DropdownItem)
完整組件列表以 components.json 為準,也可以查看 項目地址 ode_moduleselement-uilib 目錄下的文件(文件名即組件名)。
Echarts參考文檔:在 webpack 中使用 ECharts
npm 安裝 ECharts:
cnpm install echarts --save
引入 ECharts:
全部引入:
var echarts = require("echarts"); // 默認使用 require("echarts") 得到的是已經加載了所有圖表和組件的 ECharts 包,因此體積會比較大 // 基于準備好的dom,初始化echarts實例 var myChart = echarts.init(document.getElementById("main")); // 繪制圖表 myChart.setOption({ ... });
按需引入:
echarts-line.vue(基于 echarts 的折線圖組件示例)
可以按需引入的模塊列表見 https://github.com/ecomfe/ech...
jQuery有些人可能還無法離開 jQuery 的使用(例如我,不過建議是如果使用了 vue 進行開發,就沒有必要使用 jQuery 了),并且也已經習慣了使用 Ajax(目前官方推薦的異步請求庫為 Axios,vue-resource 已經停止更新維護)。
要想全局使用 jQuery 的話,可以這樣做:
#1 下載 jquery 文件
將 jquery 文件放于 static 目錄下,如:static/js/jquery-3.0.0.min.js
#2 webpack 配置文件
build/webpack.base.conf.js
... var webpack = require("webpack") // 1. 確保引入 webpack,后面會用到 module.exports = { ... resolve: { extensions: [".js", ".vue", ".json"], modules: [ resolve("src"), resolve("node_modules") ], alias: { "vue$": "vue/dist/vue.common.js", "src": resolve("src"), "assets": resolve("src/assets"), "components": resolve("src/components"), "jquery": path.resolve(__dirname, "../static/js/jquery-3.0.0.min.js") // 2. 定義別名和插件位置 } }, plugins: [ // 3. 配置全局使用 jquery new webpack.ProvidePlugin({ $: "jquery", jQuery: "jquery", jquery: "jquery", "window.jQuery": "jquery" }) ] }相關文檔/文章:
ESLint
Element
ECharts
jquery 配置參考
Vue框架引入JS庫的正確姿勢
到此為主,所有準備工作都做好了,可以盡情地開發頁面內容了。
如果對 Vue 或 vue-router 的使用有所疑問,查看官方文檔基本就能將問題解決了。
有空的時候我再將其他開發過程中遇到的問題整理出來。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/83177.html
摘要:導語承接上文實戰之后臺管理系統開發一在上一篇文章中,我詳細敘述了如何創建項目框架和引入各種后臺常用插件,做好這些準備工作后,我們就可以著手進行頁面的開發了。如果傳入的數據不符合規格,會發出警告。 1. 導語 承接上文:Vue 2.x 實戰之后臺管理系統開發(一) 在上一篇文章中,我詳細敘述了如何創建項目框架和引入各種后臺常用插件,做好這些準備工作后,我們就可以著手進行頁面的開發了。在開...
摘要:前言月份開始出沒社區,現在差不多月了,按照工作的說法,就是差不多過了三個月的試用期,準備轉正了一般來說,差不多到了轉正的時候,會進行總結或者分享會議那么今天我就把看過的一些學習資源主要是博客,博文推薦分享給大家。 1.前言 6月份開始出沒社區,現在差不多9月了,按照工作的說法,就是差不多過了三個月的試用期,準備轉正了!一般來說,差不多到了轉正的時候,會進行總結或者分享會議!那么今天我就...
平日學習接觸過的網站積累,以每月的形式發布。2017年以前看這個網址:http://www.kancloud.cn/jsfron... 03月份前端資源分享 1. Javascript 175453545 Redux compose and middleware 源碼分析 深入 Promise(二)——進擊的 Promise Effective JavaScript leeheys blog -...
閱讀 2717·2021-11-25 09:43
閱讀 2098·2021-11-24 09:39
閱讀 1993·2021-11-17 09:33
閱讀 2765·2021-09-27 14:11
閱讀 1879·2019-08-30 15:54
閱讀 3238·2019-08-26 18:27
閱讀 1273·2019-08-23 18:00
閱讀 1822·2019-08-23 17:53