前端——在本地搭建Vue單頁應用

目錄

1、安裝最新node.js

2、打開命令行窗口

3、進入要保存項目的目錄下

4、安裝 Vue CLI

5、創建新項目,選擇功能

5.1 新建項目

5.2?Please pick a preset

5.3 Check the features needed for your project

5.4?Choose a version of Vue.js

5.5?Use history mode for router?

5.6 Pick a linter/formatter config

5.7 Save this as a preset for future projects?

5.8 Lint on save

5.9?In package.json

6、使用webstorm打開創建好的項目,進行編寫

7、啟動開發服務器

8、將應用發布到生產環境

9、Vue項目結構


1、安裝最新node.js

2、打開命令行窗口

  • 快捷鍵:windows+R,輸入“cmd”,打開命令行窗口

3、進入要保存項目的目錄下

4、安裝 Vue CLI

  • Vue CLI 是一個官方提供的工具,用于快速搭建和管理 Vue 項目
  • 此命令執行一次就行了,不必每次創建新項目時都執行一次
    • npm install -g @vue/cli
      
  • ?檢查是否安裝成功

5、創建新項目,選擇功能

5.1 新建項目

  • vue create <project-name>

5.2?Please pick a preset

  • 創建?Vue 3 項目,并且希望使用默認配置,選擇?Default ([Vue 3] babel, eslint)
  • 創建 Vue 2 項目,則選擇?Default ([Vue 2] babel, eslint)
  • 自定義配置,則選擇?Manually select features,然后按照提示逐步選擇所需的功能和工具。

5.3 Check the features needed for your project

  • 選項功能:
    • (*) Babel: 使用 Babel 來轉譯 JavaScript 代碼,以確保你可以使用最新的 JavaScript 特性,并兼容不同的瀏覽器。
    • ( ) TypeScript: 是否使用 TypeScript 作為項目的編程語言。TypeScript 是 JavaScript 的一個超集,添加了靜態類型檢查的功能。
    • ( ) Progressive Web App (PWA) Support: 是否啟用漸進式 Web 應用(PWA)的支持,這允許你將網站轉變為一個可離線訪問的應用。
    • ( ) Router: 是否使用 Vue Router 來實現單頁面應用(SPA)的路由功能,用于頁面之間的導航。
    • ( ) Vuex: 是否使用 Vuex 來管理應用的狀態,特別是對于較大型的 Vue 應用程序。
    • ( ) CSS Pre-processors: 是否需要支持 CSS 預處理器,如 Sass 或 Less,來增強 CSS 的編寫和管理能力。
    • (*) Linter / Formatter: 是否啟用代碼規范檢查和格式化工具,如 ESLint。這有助于保持代碼風格的一致性,并捕捉一些常見的代碼錯誤。
    • ( ) Unit Testing: 是否需要單元測試框架,用于測試應用程序中的各個單元(組件、函數等)。
    • ( ) E2E Testing: 是否需要端到端(E2E)測試框架,用于模擬用戶在應用程序中的實際操作和場景。
  • 如何選擇:

    • 使用空格鍵選擇你需要的功能。
    • 使用?a?鍵來全選所有功能。
    • 使用?i?鍵來反轉選擇,即未選擇的變為選擇,已選擇的變為未選擇。
    • 按下回車鍵(Enter)確認你的選擇并繼續設置下一步。
  • 多數情況下,至少應該選擇 Babel 和 Linter / Formatter 來確保項目的基本質量和跨瀏覽器兼容性。其余的選擇則根據項目的規模、復雜性和開發團隊的技術棧來決定。

5.4?Choose a version of Vue.js

  • 選擇vue3,最新版本

5.5?Use history mode for router?

  • 是否使用歷史模式(history mode)來管理路由?(在生產環境中需要正確設置服務器以支持索引回退)

    歷史模式(history mode)哈希模式(hash mode) 是 Vue Router 提供的兩種不同的路由模式:

  • 哈希模式

    • 默認模式,使用 URL 的 hash(#)來模擬一個完整的 URL,例如?http://example.com/#/about
    • 不需要特殊的服務器配置,可以直接在所有服務器環境中使用。
  • 歷史模式

    • 使用 HTML5 History API 來管理路由,URL 看起來像正常的 URL,例如?http://example.com/about
    • 這種模式在視覺上更加清晰,但是在生產環境中需要服務器的支持。具體來說,需要服務器配置來確保當用戶刷新頁面或直接訪問某個 URL 時,服務器能夠正確地回退到你的應用的入口點(通常是?index.html?文件),而不是返回 404 錯誤。
  • 服務器配置

  • 當你使用歷史模式時,服務器需要配置,以確保在任何路由路徑下刷新頁面時,能夠正確地加載你的單頁面應用(SPA)。這通常涉及配置服務器以將所有路徑都重定向到你的入口文件(例如?index.html),然后讓前端路由接管處理頁面的加載和路由切換。

5.6 Pick a linter/formatter config

  • 這些選項是關于代碼規范檢查和格式化工具 ESLint 的不同配置選項

  • ESLint with error prevention only:

    • 這個選項只會配置 ESLint 來檢測并阻止可能導致錯誤的代碼模式,但不會強制統一的代碼風格或格式。
    • 適用場景:適合對代碼風格沒有特別要求,但希望確保代碼質量和錯誤檢測的項目。
  • ESLint + Airbnb config:

    • 使用 Airbnb 公司開發的 JavaScript 代碼風格和最佳實踐配置。Airbnb 的配置非常嚴格,包括了很多規則和約定,旨在提高代碼質量和可維護性。
    • 適用場景:適合大多數項目,特別是團隊較大或者想要使用流行的標準化配置來確保代碼質量和一致性的項目。
  • ESLint + Standard config:

    • 使用 Standard 配置,這也是另一種流行的 JavaScript 代碼風格和規范。Standard 風格比 Airbnb 更加簡潔,通常更容易上手。
    • 適用場景:適合希望使用簡單、直接的代碼風格和規范的項目。
  • ESLint + Prettier:

    • 這個選項會集成 ESLint 和 Prettier。ESLint 負責代碼質量和錯誤檢查,而 Prettier 負責代碼的格式化。
    • 適用場景:適合希望代碼風格和格式化都能得到管理的項目。Prettier 提供了強大的自動格式化功能,能夠保持整個團隊的代碼風格一致。

5.7 Save this as a preset for future projects?

  • 是否要保存為這個項目作為一個模板保存?

5.8 Lint on save

5.9?In package.json

創建成功


6、使用webstorm打開創建好的項目,進行編寫

7、啟動開發服務器

  • 如果在 package.jsonscripts 中,dev 腳本依賴于某些模塊或者工具,那么在第一次運行或者更新依賴后,確實需要運行 npm install 來確保依賴的包已經安裝到本地的 node_modules 目錄中。
  • 當你已經安裝了所有依賴,并且沒有新增或更新依賴時,通常直接運行?npm run dev?就可以啟動開發環境了,因為依賴已經存在于本地的?node_modules?中。
npm run dev

訪問網址:http://127.0.0.1:5173/index

8、將應用發布到生產環境

  • 當你運行?npm build?時,Vue CLI 會啟動其構建服務,根據你項目中的配置(如?vue.config.js?文件)來進行構建,生成最終的構建文件供部署使用。
  • 此命令會在?./dist?文件夾中為你的應用創建一個生產環境的構建版本。?把dist文件夾的東西復制粘貼到后端項目的resources/static目錄下,連接前后端……(此處涉及到前后端分離的知識,另說)
npm build

?

9、Vue項目結構

my-vue-app/
├── node_modules              # 項目的所有依賴包
├── public/                  # 靜態資源目錄
│   ├── index.html           # 入口 HTML 文件
│   └── ...
├── src/                     # 源代碼目錄
│   ├── assets/              # 靜態資源如圖片、字體等
│   ├── components/          # Vue 組件
│   ├── views/               # 頁面視圖組件
│   ├── router/              # 路由配置
│   ├── store/               # Vuex 狀態管理
│   ├── services/            # 后端 API 服務
│   ├── styles/              # 全局樣式
│   ├── utils/               # 工具函數
│   ├── App.vue              # 根組件
│   └── main.js              # 入口 JS 文件
├── tests/                   # 測試文件目錄
├── .eslintrc.js             # ESLint 配置文件
├── .babelrc                 # Babel 配置文件
├── .gitignore               # 指定了 Git 在版本控制中忽略的文件和目錄
├── babel.config.js          # 編譯器Babel的配置
├── package.json             # npm 包管理文件
├── README.md                # 項目說明文件
├── vue.config.js            # 自定義 Vue CLI 的配置

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

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

相關文章

Android13 串口控制是能wifi adb實現

Android13 串口控制是能wifi adb實現 文章目錄 一、前言二、Android 串口控制是能wifi adb實現1、通過Settings屬性控制2、通過prop屬性控制3、wifi adb 對應的Settings屬性和prop屬性關系&#xff08;1&#xff09;屬性監聽&#xff08;2&#xff09;相關代碼位置&#xff08;…

優化數據庫字段使用位運算-php語言示例

背景&#xff1a;一個會員有三個狀態&#xff0c;A、B、C&#xff0c;其中一個人可以為 A、B、C、AB&#xff1b;之前數據表結構加了三個字段is_a、is_b、is_c; 本人實在不想這樣粗糙的實現需求&#xff0c;遂決定用位運算優化。 上代碼&#xff1a; 位運算可以用來處理狀態值…

探索SOLIDWORKS 2024設計增強功能

隨著技術的不斷進步和市場的日益競爭&#xff0c;工程設計和制造行業對于快捷、準確和創新的工具需求日益增長。SOLIDWORKS作為3D CAD設計軟件&#xff0c;一直致力于為用戶提供更強大、更便捷的設計工具。SOLIDWORKS 2024的發布&#xff0c;再次證明了其在設計增強功能方面的持…

使用 Amazon Bedrock Converse API 簡化大語言模型交互

本文將介紹如何使用 Amazon Bedrock 最新推出的 Converse API&#xff0c;來簡化與各種大型語言模型的交互。該 API 提供了一致的接口&#xff0c;可以無縫調用各種大型模型&#xff0c;從而消除了需要自己編寫復雜輔助功能函數的重復性工作。文中示例將展示它相比于以前針對每…

如何在Windows上使用Docker搭建PHP開發環境

前言 在本地搭建開發環境我好像沒幾年就要折騰一次&#xff0c;因為本地開發電腦使用的是windows&#xff0c;早些年的時候&#xff0c;用過很多類似WAMP之類的東西&#xff0c;但最終都有或多或少不滿意的地方&#xff0c;前兩年的時候&#xff0c;還折騰過WSL&#xff0c;但…

批量文件名修改軟件:一鍵解決同一編碼多型號文件分類與命名難題,高效管理文件

在數字化時代&#xff0c;圖片文件已經成為我們工作中不可或缺的一部分。然而&#xff0c;當面對成百上千個同一編碼下不同型號的圖片文件時&#xff0c;如何快速、準確地進行分類和命名&#xff0c;成為了許多職場人士頭疼的問題。現在&#xff0c;我們為您帶來了一款神奇的批…

MyBatisPlus 基礎數據表的增刪改查 入門 簡單查詢

MyBatisPlus MyBatisPlus&#xff08;簡稱MP&#xff09;是一個基于MyBatis的增強工具庫&#xff0c;簡化了MyBatis的開發&#xff0c;提供了很多實用的功能和特性&#xff0c;如自動生成SQL、通用CRUD操作、分頁插件、條件構造器、代碼生成器等。它不僅簡化了開發過程&#x…

2024海亮日記

寫在前面&#xff1a;長文預警 20240617 聽說要去海亮&#xff0c;不考&#xff08;補考&#xff09;期末考試&#xff0c;于是進行一個停課的辦理&#xff0c;第一次進入410&#xff0c;被逆天的配置和氣氛所震驚 發誓這回去HL一定要有好效果&#xff0c;于是制定了詳細的計…

golang 未指定類型interface{} 類型的 int類型數據json.Unmarshal 解碼后變成float64類型問題解決方法

golang內置的json反序列化方法&#xff0c;默認情況下對應 未指定類型interface{} 類型的的 int類型數據在經過Unmarshal解碼后 int類型的數據會變成 float64類型。 因為json里面默認將interface{}類型的int數據都當做float64來處理。 解決方法很簡單&#xff0c;就是使用自定…

優盤有盤符顯示0字節:故障解析與數據恢復策略

一、優盤有盤符顯示0字節現象描述 在使用優盤的過程中&#xff0c;我們有時會遇到一種令人困惑的情況&#xff1a;插入優盤后&#xff0c;電腦能正常識別到優盤的盤符&#xff0c;但當我們嘗試訪問其中的數據時&#xff0c;卻發現優盤的容量顯示為0字節&#xff0c;無法讀取或…

快速掌握MyBatis

MyBatis 是一個流行的 Java 持久層框架&#xff0c;它提供了一種半自動的 SQL 映射方式&#xff0c;使得開發者能夠更加靈活地編寫 SQL 語句&#xff0c;同時避免了傳統 JDBC 代碼的冗余和復雜性。下面進行簡要概述&#xff1a; MyBatis 快速掌握 核心概念&#xff1a;理解 My…

8.1 Firmware Update Process

8.1 Firmware Update Process 通過reset激活firmware 更新的過程&#xff1a; host發出firmare下載命令&#xff0c;將FW image下載到控制器。FW image可能有多個部分要下載&#xff0c;因此FW image 下載命令中指定正在下載的FW image的每個部分的偏移量。FW image 下載命令…

Sui創始團隊在競速環節中的快問快答

在Sui Basecamp活動期間&#xff0c;Sui區塊鏈的最初貢獻者在Oracle紅牛賽車模擬器上展示了他們的技術能力&#xff0c;在駕駛圈時回答了有關Sui的問題。 Evan Cheng&#xff08;又名Revvin’ Evan&#xff09;在解釋Mysticeti創下區塊鏈最終性記錄的同時保持著他的駕駛線路。…

Java | Leetcode Java題解之第200題島嶼數量

題目&#xff1a; 題解&#xff1a; class Solution {void dfs(char[][] grid, int r, int c) {int nr grid.length;int nc grid[0].length;if (r < 0 || c < 0 || r > nr || c > nc || grid[r][c] 0) {return;}grid[r][c] 0;dfs(grid, r - 1, c);dfs(grid, r…

go Channel原理 (三)

Channel 設計原理 不要通過共享內存的方式進行通信&#xff0c;而是應該通過通信的方式共享內存。 在主流編程語言中&#xff0c;多個線程傳遞數據的方式一般都是共享內存。 Go 可以使用共享內存加互斥鎖進行通信&#xff0c;同時也提供了一種不同的并發模型&#xff0c;即通…

【嵌入式——FreeRTOS】任務

【嵌入式——FreeRTOS】任務 任務創建和刪除動態方式創建任務靜態方式創建任務 刪除任務任務切換調度器任務切換流程 任務掛起任務恢復相關API函數 任務創建和刪除 動態方式創建任務 任務的任務控制塊以及任務的棧空間所需的內存&#xff0c;均由freeRTOS從freeRTOS管理的堆中…

c#asp.net中字典的使用

字典是一個鍵值對&#xff0c;可以用來保存數據&#xff0c;再查詢&#xff1b; 下面是一個案例&#xff1a;依據多個學號查詢多個學生的姓名&#xff0c;只能到數據庫查詢一次數據&#xff01;&#xff01;&#xff01; 先在數據庫查詢學號對應的學生&#xff0c;把數據保存在…

mysql8.0.19安裝zip版本

下載地址https://downloads.mysql.com/archives/community/ 下載版本 下載后解壓&#xff0c;不包括data 和my.ini文件。其中data 文件是自動生成的【mysqld --initialize --console】&#xff0c;my.ini需要自己編寫設置。 新建my.ini文件 需要自己設置 basedirG:\soft\mysql…

內網服務器時間校正

新購買的云服務器發現內網機器和可以訪問外網的機器時間慢了三分鐘&#xff0c;導致有些訪問會報錯&#xff0c;那么我們配置一下ntp校正一下時間。外網配置起來比較簡單&#xff0c;直接下載ntp執行校正命令即可。 比當前時間慢了三分鐘 注意當前服務器是可以訪問外網的機器這…

【gitee使用教程】(創建項目倉庫并上傳代碼簡易版)

gitee使用教程&#xff0c;創建項目倉庫并上傳代碼簡易版 1.在碼云上創建一個倉庫2.將代碼克隆到本地1.復制倉庫地址2.找到你想要放置的文件位置&#xff0c;右鍵點擊更多選項&#xff0c;選擇Git Clone3.將復制的倉庫地址填入URL 3. IDEA結合GIT和Gitee的簡單使用idea需要識別…