一項目建立javascript
1,搭建vue-cli腳手架(依賴npm)css
沒有安裝npm的同窗,請先使用npm install -g vue-cli ,而後再進行這一步html
安裝的過程當中有幾項 vue
? Project name p1 //項目名
? Project description 1 //描述
? Author jimsfriend //做者
? Vue build standalone
? Install vue-router? Yes //是否使用路由(請選擇Yes)
? Use ESLint to lint your code? No //這裏是是否使用嚴格模式,必定要選否,不要問我爲何,嚴格模式很痛苦!
? Set up unit tests No //這裏隨便
? Setup e2e tests with Nightwatch? No //這裏隨便java
而後就是下載依賴包,得等會兒node
二 項目結構webpack
1,build:webpack配置文件,能夠不用動ios
2,config,配置文件git
dev.env.js看名字叫生產環境.js,沒啥重要的用途,能夠不用關注github
、
這個也是
比較重要的是config/index.js文件
var path = require('path') module.exports = { build: { // production 環境 env: require('./prod.env'), // 使用 config/prod.env.js 中定義的編譯環境 index: path.resolve(__dirname, '../dist/index.html'), // 編譯輸入的 index.html 文件 assetsRoot: path.resolve(__dirname, '../dist'), // 編譯輸出的靜態資源路徑 assetsSubDirectory: 'static', // 編譯輸出的二級目錄 assetsPublicPath: '/', // 編譯發佈的根目錄,可配置爲資源服務器域名或 CDN 域名 productionSourceMap: true, // 是否開啓 cssSourceMap // Gzip off by default as many popular static hosts such as // Surge or Netlify already gzip all static assets for you. // Before setting to `true`, make sure to: // npm install --save-dev compression-webpack-plugin productionGzip: false, // 是否開啓 gzip productionGzipExtensions: ['js', 'css'] // 須要使用 gzip 壓縮的文件擴展名 }, dev: { // dev 環境 env: require('./dev.env'), // 使用 config/dev.env.js 中定義的編譯環境 port: 8080, // 運行測試頁面的端口 assetsSubDirectory: 'static', // 編譯輸出的二級目錄 assetsPublicPath: '/', // 編譯發佈的根目錄,可配置爲資源服務器域名或 CDN 域名 proxyTable: {}, // 須要 proxyTable 代理的接口(可跨域) // CSS Sourcemaps off by default because relative paths are "buggy" // with this option, according to the CSS-Loader README // (https://github.com/webpack/css-loader#sourcemaps) // In our experience, they generally work as expected, // just be aware of this issue when enabling this option. cssSourceMap: false // 是否開啓 cssSourceMap } }
這段代碼是抄了園友,更加詳細的原文地址 https://www.cnblogs.com/whkl-m/p/6627864.html
3,dist: 編譯後的打包文件默認是沒有的,
項目編譯打包:
cmd 到project1目錄,運行:npm run build ,而後對多出來一個dist文件,這個dist文件就是編譯後的項目,發佈的時候只需把dist放在 web宿主 (如 IIS)上便可
4,mode_modules,node模塊,就是一些依賴包,
5 ,src,主要編寫代碼文件,後面會單獨介紹
6,static,也是靜態文件存放文件
7,剩下的都是寫不怎麼重要的,省略了。
二 項目運行,進入project1 目錄 在cmd中運行 npm run dev 回車便可
而後就運行起來,訪問 http://localhost:8080/
三 安裝iview,
也是project1目錄下,運行 npm install iview --save
裝好以後基本上依賴項和環境就Ok,而後就開幹了
Iview的文檔地址 http://v1.iviewui.com/docs/guide/install,必定要注意版本,不一樣的版本api不一樣
先了解一下src的項目結構
assets,放一些靜態文件,好比圖片圖標啥的
components , 存放組件 ,理解爲抽取出來的一些公共的自定義組件
js,這個是我本身新建的文件夾放一些公共的js文件好比 用axios粉裝的Http請求 , 經常使用的工具類等等
router ,裏面有一個index.js 文件,是路由文件 。就像ASPNET MVC 中的路由表,只不過他是顯式的定義出來,而mvc中默認使用ctroller前綴和action名做爲路由。
views文件夾,放主要的頁面,代碼量最多的地方
App.vue,入口的組件
main.js入口文件
清楚以後,咱們來寫一個登陸頁
先搞一個_layout文件放佈局頁,是否是和mvc裏面的_layout很像?沒錯他們都是一個意思
這裏的<router-view></router-view> 和mvc中的RendBody()是一個意思
而後搞 account文件夾,來放登錄註冊這種頁面 ,搞一個login.vue文件,就是登陸頁了
搞完以後就去訪問 /account/login,你會發現啥都沒有,由於尚未再router/index.js裏面定義
,定義一個 account_login ,名字隨便起 from後面是文件夾的路徑
,下面的path是在瀏覽器中訪問的地址
再次訪問,已經有了
,寫不動了,今天先寫這麼多,下一節寫路由的使用