Vue3.x 超詳細入門教程



  • 請事先裝好 nodeJs
  • 整個 vue-cli 版本:vue 3.0.0 + vue-router 4.0.0-0 + vuex 4.0.0-0 + eslint 6.7.2 + typescript 4.1.5

安裝步驟

1. 安裝vue-cli

npm 或 yarn 安裝

  • npm install -g @vue/cli
  • yarn global add @vue/cli

查看版本(是否安裝成功):

  • vue -V (大寫的V)
  • vue --version
    在這里插入圖片描述
    當前我安裝的 vue-cli 版本為:4.5.13

2. 創建項目

進入demo目錄: cd G:\demo\
創建my-project項目:vue create my-project
在這里插入圖片描述

  1. 提供了三種設置:Vue2版、Vue3版、手動選擇功能;
  2. 按鍵盤上下鍵選擇默認(default)還是手動(Manually);
  3. 這里我選擇第三種:Manually select features
  4. 回車鍵確認;

3. 選擇配置

選擇自己所要集成的配置(格鍵是選中與取消,A鍵是全選,回車確定)
這里我的選擇如下:
在這里插入圖片描述
配置項:

  1. (*) Choose Vue version:選擇 Vue 版本
  2. (*)Babel:支持使用Babel編譯器
  3. (*)TypeScript:支持使用 TypeScript 書寫源碼
  4. ( )Progressive Web App (PWA) Support:支持PWA
  5. (*) Router:支持 vue-router
  6. (*)Vuex:支持 vuex
  7. (*)CSS Pre-processors:支持 CSS 預處理器
  8. (*)Linter / Formatter:支持代碼風格檢查和格式化
  9. ( )Unit Testing:支持單元測試
  10. ( )E2E Testing: 支持 E2E 測試

4. 選擇 Vue 版本

在這里插入圖片描述
這里我選擇:3.x

安裝的 vue-cli 將會是基於 vue3.x 版本


5. 是否使用 class 風格的組件語法

如果在項目中想要保持使用 TypeScript 的 class 風格的話,建議大家選擇y。
在這里插入圖片描述
這里我選擇:y


6. 是否使用 Babel 與 TypeScript 一起用於自動檢測的填充

在這里插入圖片描述這里我選擇:y


7. 是否使用 history 路由模式

在這里插入圖片描述
這里我選擇:y


8. 選擇CSS預處理器

在這里插入圖片描述
Sass/SCSS分兩種:

  • node-sass:是用 node(調用 cpp 編寫的 libsass)來編譯 sass,是自動編譯實時的
  • dart-sass:是用 drat VM 來編譯 sass,需要保存后才會生效

這里我選擇:Sass/SCSS(with node-sass)


9. 選擇 eslint 配置

在這里插入圖片描述

  1. ESLint with error prevention only:只進行報錯提醒;
  2. ESLint + Airbnb config:Airbnb配置,不嚴謹模式;
  3. ESLint + Standard config:標准配置,正常模式;
  4. ESLint + Prettier:嚴格模式;
  5. TSlint:typescript格式驗證工具

這里我選擇:ESLint with error prevention only


10. 選擇什么時候執行 eslint 校驗

在這里插入圖片描述

  • Lint on save:保存時檢查
  • Lint and fix on commit:提交時檢查

這里我選擇:Lint on save


11. 選擇配置文件存放的位置

在這里插入圖片描述

  • In dedicated config files:在專用的配置文件中單獨存放
  • In package.json:存放在 package.json 中

這里我選擇:In dedicated config files


12. 是否保存之前的配置項

在這里插入圖片描述
這里我選擇:N


13. 等待下載依賴模塊

在這里插入圖片描述


14. 裝好后,進入目錄,啟動

在這里插入圖片描述

cd my-project ( 進入項目根目錄 )
yarn serve ( 啟動項目 )

在這里插入圖片描述


項目目錄

現在的目錄是 Vue3.x 的 cli 看上去簡潔多了,去掉了 Vue2.x 中 build 和 config 等目錄
在這里插入圖片描述


項目配置

在項目的根目錄下新建 vue.config.js 文件(是根目錄,不是src目錄

module.exports = {
    publicPath: process.env.NODE_ENV === "production" ? "./" : "/", // 部署生產環境和開發環境下的URL
    outputDir: 'dist', // 構建輸出目錄(npm run build 或 yarn build 時 ,生成文件的目錄名稱)
    assetsDir: 'assets', // 用於放置生成的靜態資源(js、css、img、fonts)的;(項目打包之后,靜態資源會放在這個文件夾下)
    lintOnSave: true, // 是否開啟eslint保存檢測,有效值:ture | false | 'error'
    runtimeCompiler: false, // 是否使用包含運行時編譯器的Vue核心的構建
    transpileDependencies: [], // 默認情況下 babel-loader 忽略其中的所有文件 node_modules,這里可增加例外的依賴包名
    productionSourceMap: false, // 是否在構建生產包時生成 sourceMap 文件,false將提高構建速度
    filenameHashing: false, //默認情況下,生成的靜態資源在它們的文件名中包含了 hash 以便更好的控制緩存。你可以通過將這個選項設為 false 來關閉文件名哈希。(false的時候就是讓原來的文件名不改變)
    css: { // 配置高於chainWebpack中關於 css loader 的配置
        modules: false, // 是否開啟支持 foo.module.css 樣式
        extract: true, // 是否使用 css 分離插件 ExtractTextPlugin,采用獨立樣式文件載入,不采用 <style> 方式內聯至 html 文件中
        sourceMap: false, // 是否構建樣式地圖,false 將提高構建速度
        loaderOptions: { // css預設器配置項
            sass: {
                data: '' //`@import "@/assets/scss/mixin.scss";`
            },
            css: {
                // options here will be passed to css-loader
            },
            postcss: {
                // options here will be passed to postcss-loader
            }
        }
    },
    configureWebpack: (config) => {
      //webpack-bundle-analyzer 插件
      const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin
      if (process.env.NODE_ENV === 'production') {
          return {
              plugins: [
                  new BundleAnalyzerPlugin()
              ]
          }
      }
    },
    // 支持webPack-dev-server的所有選項
    devServer: {
        open: true, // 是否自動啟動瀏覽器
        host: '0.0.0.0',
        port: 3000, // 端口號
        https: false,
        hotOnly: false,
        proxy: null,
        // proxy: { // 配置多個代理
        //     '/api': {
        //         target: '<url>',
        //         ws: true,
        //         changOrigin: true
        //     },
        //     "/foo": {
        //         target: "<other_url>"
        //     }
        // },
        before: app => {}
    },
    parallel: require('os').cpus().length > 1, // 構建時開啟多進程處理 babel 編譯
    pwa: { // https://github.com/vuejs/vue-cli/tree/dev/packages/%40vue/cli-plugin-pwa
    },
    pluginOptions: {} // 第三方插件配置
};

其他

其他方法使用 Vue3.x

  1. 獨立版本:可以在 Vue.js 的官網上直接下載最新版本, 並用 <script> 標簽引入,下載 vue.js
  2. 使用 CDN
    unpkg(推薦):https://unpkg.com/vue@next ,會保持和 npm 發布的最新的版本一致。
    Staticfile CDN(國內) : https://cdn.staticfile.org/vue/3.0.5/vue.global.js
    cdnjs : https://cdnjs.cloudflare.com/ajax/libs/vue/3.0.5/vue.global.js
  3. Vite (推薦)

官方文獻

  1. Vue2.x
  2. Vue3.x
  3. Vue CLI
  4. Vue Router
  5. Webpack
  6. TypeScript
  7. Vite
  8. Eslint
  9. SASS
  10. Babel


免責聲明!

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



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