vue項目實戰總結

馬上過年了,最近工作不太忙,再加上本人最近比較懶,毫無斗志,不愿學習新東西,或許是要過年的緣故(感覺像是在找接口)。

就把前一段時間做過的vue項目,進行一次完整的總結。

這次算是詳細總結,會從項目的搭建,一直到最后的服務器上部署。

廢話不多說了。干貨直接上。

一、 ? 必須node環境, ? 這次就不寫node環境的安裝了。過兩天我會寫個node環境的安裝隨筆。

二、 ?node環境配好后。開整vue。

1. 安裝vue腳手架。

  npm install -g vue-cli

?2. ?用腳手架搭項目(只是一行命令)

  vue init webpack-simple (項目名字)

  或

  vue init webpack (項目名字)

  二者區別(個人理解):

    vue init webpack-simple? :可以理解為輕巧的,沒有多余的配置和包,但能保證項目正常運行。

    vue init webpack : ?可以理解為完整的,包含比較多配置和包。

3. 本次選用 vue init webpack 完整版的。

  (1) ?執行完vue init webpack,會遇見以下選項。

?

? 完成上述選(按需選擇),等把所需依賴下載完后。

 (2) ?進入剛建的項目里,執行npm install?

  eg: ? ?PS E:\vueTest\vueTest2> npm run dev

  當 出現下面的話,就證明你的vue項目已經搭好了。

 

 (3) 打開瀏覽器,訪問?http://localhost:8080,

    當出現下面這個頁面,說明vue項目正常運行了。框架已搭好。

  

  (4) 骨架已搭好,現在給她血與肉,讓她不在骨感。

    這次我們用 axios 進行向服務器請求

          vuex 來管理我們的前端數據。

  我們需要首先安裝這兩個依賴包,按套路走 : npm install ?axios vuex --save

    在此我做個補充,安裝依賴包時,會使用到 --save-dev 或 --save

    安裝的依賴包會在項目中這個文件package.json中展示

?    --save: 上線后,要用到的。(執行后,會對應下圖中dependencies)

    --save-de: 開發時,要用到的包.(執行后,會對應下圖中devDependencies)

  ? ?

  

  此處,我也有個問題: 安裝的依賴包,是放到?dependencies 中,還是?devDependencies中?

  在網上找了半天也沒有得到確切答案,只是籠統的說“開發環境用到的包放在devDependencies, 上線用到的依賴包放在dependencies”。所以,我就按自己的理解來放了,vue、vuex、axios、vue-router,放在dependencies,其他依賴包放在         ? ?   devDependencies,  我的依據就是默認生成框架時,vue、vue-router 會放在dependencies中,所以,我覺得跟vue項目密切相關的vuex、axios也放在dependencies(只是個人見解)。

?

  (5) 依賴包已經安裝完,現在。我們來配置 路由(router) 和 數據管理倉庫(store)

    ?為了開發的規范和整潔,我把這兩塊兒,分別放在兩個文件夾中

    

  ?(6) 現在分別來講。先整 router(路由)。

  

?

  (7) 數據管理 ————倉庫(store)

  這個建議先看看官網:https://vuex.vuejs.org/zh-cn/

  在這里我就給出細化的分類,以及大致流程圖。

  在此store文件夾下的js截圖:actions.js、 moutations.js、 index.js、 types.js、 getters.js

  ? ? ?? ??? ? ? ???

?

  

  index.js ? 負責管理 actions.js 和 moutations.js?

  actions.js ? 相當于java,中的service層,相當于是接口。 (如果不熟悉java,你就認為,actions.js的目的是,可以認為這是書的目錄。為了讓項目整潔,一目了然,清楚閱覽actions.js ,每個操存儲操作的目的 )

  moutations.js ? 相當于java,中的dao層,與存取數據有關。(如果不熟悉java,你就認為,moutations.js的目的是,存數據,把數據存到變量里,保存起來)。

  getters.js ? 就是獲取倉庫中數據的方法。 (目的是,把所有的獲取數據操作放在一起。方便管理與查找)。

  types.js ?清楚表明,存數據時,actions.js 的方法 和 moutations.js 中的方法, 一對一對應。這樣條理清晰。?

  大致給出了?actions.js 、 motations 、 getters 三者之間的關系。

  

?

  (8)? vue 中模擬數據。

  vue中模擬數據的意義: 當本地測試時,方法會訪問模擬數據,當項目上線后,當調用方法時,會直接訪‘“.do”請求,問服務器,回去數據庫返回的數據。

  在vue項目中的創建mock數據: 在static中創建mock文件夾以及config.js如下圖

  

  vue項目中如何配置mock數據,以及上線后的請求:?

  最近做vue項目時,遇到了一個問題,模擬數據時,如何配置mock中的json數據。

  舊的vue腳手架中是通過 dev-server.js 來配置mock數據的。 ? ? ? ??

?

但新的vue腳手架是下圖,沒有dev-server.js.這時mock數據怎么配置呢? 答案是,mock配置放在 webpack.dev.conf.js中。

?

找到webpack.dev.conf,js,并進行如下配置。

?

? (9). 項目完成后,打包命令是 npm run build.?

  會在項目中,生成包。如下圖:

?

?(10). 把生成的項目打到服務器上,需要注意路徑問題

  在項目中的config文件夾下的index.js 中?assetsPublicPath,配置服務器路徑。(按需求配置,此處我就用默認的了)

?

  

?

  到目前為止,vue相關的問題,大致整完了。

  如果看到的朋友,有何疑問,我們可以一起探討。

  此刻已是20180209 ? 17:47,今天放假。我也準備關閉電腦。

  看到同事們已經下班。有的拎著行李趕火車,回家過年了。大家都是滿臉喜悅,無論我們是少年、還是中年、暮年,團聚與回家的喜悅,都是發自內心,臉上是遮不住的............

轉載于:https://www.cnblogs.com/tlsmile/p/8427951.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/390220.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/390220.shtml
英文地址,請注明出處:http://en.pswp.cn/news/390220.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Linux !的使用

轉自:https://www.linuxidc.com/Linux/2015-05/117774.htm 一、history    78 cd /mnt/ 79 ls 80 cd / 81 history 82 ls 83 ls /mnt/ !78 相當于執行cd /mnt !-6 也相當于執行cd /mnt 二、!$ cd /mnt ls !$ 相當于執行 ls /mnt轉載于:https://www.cnblogs.…

881. 救生艇

881. 救生艇 第 i 個人的體重為 people[i],每艘船可以承載的最大重量為 limit。 每艘船最多可同時載兩人,但條件是這些人的重量之和最多為 limit。 返回載到每一個人所需的最小船數。(保證每個人都能被船載)。 示例 1: 輸入:…

使用python數據分析_如何使用Python提升您的數據分析技能

使用python數據分析If youre learning Python, youve likely heard about sci-kit-learn, NumPy and Pandas. And these are all important libraries to learn. But there is more to them than you might initially realize.如果您正在學習Python,則可能聽說過sci…

openresty 日志輸出的處理

最近出了個故障,有個接口的請求居然出現了長達幾十秒的處理時間,由于日志缺乏,網絡故障也解除了,就沒法再重現這個故障了。為了可以在下次出現問題的時候能追查到問題,所以需要添加一些追蹤日志。添加這些追蹤日志&…

誰是贏家_贏家的真正作品是股東

誰是贏家As I wrote in the article “5 Skills to Look For When Hiring Remote Talent,” remote work is a fast emerging segment of the labor market. Today roughly eight million Americans work remotely full-time. And among the most commonly held jobs include m…

博客園代碼黑色主題高亮設置

參考鏈接: https://segmentfault.com/a/1190000013001367 先發鏈接,有空實踐后會整理。我的GitHub地址:https://github.com/heizemingjun我的博客園地址:http://www.cnblogs.com/chenmingjun我的螞蟻筆記博客地址:http…

Matplotlib課程–學習Python數據可視化

Learn the basics of Matplotlib in this crash course tutorial. Matplotlib is an amazing data visualization library for Python. You will also learn how to apply Matplotlib to real-world problems.在此速成班教程中學習Matplotlib的基礎知識。 Matplotlib是一個很棒…

Android 開發使用 Gradle 配置構建庫模塊的工作方式

Android 開發過程中,我們不可避免地需要引入其他人的工作成果。減少重復“造輪子”的時間,投入到更有意義的核心任務當中。Android 庫模塊在結構上與 Android 應用模塊相同。提供構建應用所需的一切內容,包括源代碼(src&#xff0…

vue 組件庫發布_如何創建和發布Vue組件庫

vue 組件庫發布Component libraries are all the rage these days. They make it easy to maintain a consistent look and feel across an application. 如今,組件庫風行一時。 它們使在整個應用程序中保持一致的外觀和感覺變得容易。 Ive used a variety of diff…

angular

<input type"file" id"one-input" accept"image/*" file-model"images" οnchange"angular.element(this).scope().img_upload(this.files)"/>轉載于:https://www.cnblogs.com/loweringye/p/8441437.html

Java網絡編程 — Netty入門

認識Netty Netty簡介 Netty is an asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers & clients. Netty is a NIO client server framework which enables quick and easy development o…

har文件分析http_如何使用HAR文件分析一段時間內的性能

har文件分析httpWhen I consider the performance of a website, several things come to mind. I think about looking at the requests of a page, understanding what resources are being loaded, and how long these resources take to be available to users.當我考慮網站…

第一階段:前端開發_Mysql——表與表之間的關系

2018-06-26 表與表之間的關系 一、一對多關系&#xff1a; 常見實例&#xff1a;分類和商品&#xff0c;部門和員工一對多建表原則&#xff1a;在從表&#xff08;多方&#xff09;創建一個字段&#xff0c;字段作為外鍵指向主表&#xff08;一方&#xff09;的一方      …

按鈕提交在url后添加字段_在輸入字段上定向單擊“清除”按鈕(X)

按鈕提交在url后添加字段jQuery makes it easy to get your project up and running. Though its fallen out of favor in recent years, its still worth learning the basics, especially if you want quick access to its powerful methods.jQuery使您可以輕松啟動和運行項目…

429. N 叉樹的層序遍歷

429. N 叉樹的層序遍歷 給定一個 N 叉樹&#xff0c;返回其節點值的層序遍歷。&#xff08;即從左到右&#xff0c;逐層遍歷&#xff09;。 樹的序列化輸入是用層序遍歷&#xff0c;每組子節點都由 null 值分隔&#xff08;參見示例&#xff09;。 - 示例 1&#xff1a;輸入…

javascript如何阻止事件冒泡和默認行為

阻止冒泡&#xff1a; 冒泡簡單的舉例來說&#xff0c;兒子知道了一個秘密消息&#xff0c;它告訴了爸爸&#xff0c;爸爸知道了又告訴了爺爺&#xff0c;一級級傳遞從而以引起事件的混亂&#xff0c;而阻止冒泡就是不讓兒子告訴爸爸&#xff0c;爸爸自然不會告訴爺爺。下面的d…

89. Gray Code - LeetCode

為什么80%的碼農都做不了架構師&#xff1f;>>> Question 89. Gray Code Solution 思路&#xff1a; n 0 0 n 1 0 1 n 2 00 01 10 11 n 3 000 001 010 011 100 101 110 111 Java實現&#xff1a; public List<Integer> grayCode(int n) {List&…

400. 第 N 位數字

400. 第 N 位數字 在無限的整數序列 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, …中找到第 n 位數字。 注意&#xff1a;n 是正數且在 32 位整數范圍內&#xff08;n < 231&#xff09;。 示例 1&#xff1a; 輸入&#xff1a;3 輸出&#xff1a;3 示例 2&#xff1a; 輸入&…

1.初識Linux

1.Linux 區分大小寫 2.shell命令行-bash 進入終端->[stulocalhost~]$ (其中,Stu為登錄用戶名&#xff0c;localhost為登錄主機名&#xff0c;’~’ 表示當前用戶正處在stu用戶的家目錄中, 普通用戶的提示符以$結尾&#xff0c;而根用戶以’#’結尾) 3.Linux中所謂的命令(…

這份NLP研究進展匯總請收好,GitHub連續3天最火的都是它

最近&#xff0c;有一份自然語言處理 (NLP) 進展合輯&#xff0c;一發布就受到了同性交友網站用戶的瘋狂標星&#xff0c;已經連續3天高居GitHub熱門榜首位。 合集里面包括&#xff0c;20多種NLP任務前赴后繼的研究成果&#xff0c;以及用到的數據集。 這是來自愛爾蘭的Sebasti…