Aspnet Mvc 前后端分離項目手記(四)vue項目的搭建(一)(iview)


一項目創建

1,搭建vue-cli腳手架(依賴npm)

沒有安裝npm的同學,請先使用npm install -g vue-cli ,然后再進行這一步

安裝的過程中有幾項 

? 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       //這里隨便

然后就是下載依賴包,得等會兒

 

二 項目結構

1,build:webpack配置文件,可以不用動

2,config,配置文件

dev.env.js看名字叫生產環境.js,沒啥重要的用途,可以不用關注

 

這個也是

比較重要的是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是在瀏覽器中訪問的地址

 

再次訪問,已經有了

 ,寫不動了,今天先寫這么多,下一節寫路由的使用

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM