亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

解析vue-cli@3.0使用方式和舊版本的差異

發布時間:2020-05-11 14:50:43 來源:億速云 閱讀:653 作者:Leah 欄目:web開發

本文在介紹關于vue-cli@3.0的基礎上,重點探討了vue-cli@3.0的使用方式以及和舊版本的差異,本文內容緊湊,希望大家可以有所收獲。

2018年8月10號,vue-cli3.0面世

@2.9.3的使用
1.下載vue-cli和安裝項目
cnpm i -g vue-cli#2.9.3

vue init webpack my-app

@3.0以上,目前beta版本的使用
1.下載vue-cli和安裝項目
npm install -g @vue/cli

vue create <Project Name> //文件名 不支持駝峰(含大寫字母)

全局安裝過舊版本的 vue-cli(1.x 或 2.x)要先卸載它,否則跳過此步:

npm uninstall vue-cli -g //或者 yarn global remove vue-cli

Vue CLI 3.0與其他的版本完全不同,它經歷了重構,目的是:

1.盡可能減少現代前端工具在配置上的煩惱,尤其是在開發者將多個工具混合使用時;

2.盡可能在工具鏈中加入最佳實踐,并讓其成為Vue應用程序的默認實踐。

Vue CLI的核心目標是為基于webpack 4構建的預配置構建提供設置,目標是最大限度地減少開發人員配置的次數,所以Vue CLI 3對具有以下特點的項目都支持開箱即用:

預配置webpack功能,如模塊熱替換、代碼拆分、 搖樹優化(tree-shaking)、高效持久化緩存等;

通過Babel 7 + preset-env(Babel插件)對 ES2017進行轉換和基于使用情況注入polyfill

支持PostCSS(默認啟用autoprefixer)和所有主要的CSS預處理器

Modern mode:并行發布原生ES2017 +bundle和傳統bundle

多頁面模式:構建具有多個HTML / JS入口點的應用程序

構建目標:將Vue單文件組件構建成為庫或原生Web組件(詳情如下)

可以在創建新項目時混合選用多種集成:

TypeScript

PWA

Vue Router & Vuex

ESLint / TSLint / Prettier

用Jest或Mocha進行單元測試

用Cypress 或者 Nightwatch進行E2E 測試

vue-cli3 創建的時候并不會自動創建vue.config.js,因為這個是個可選項,所以一般都是需要修改webpack的時候才會自己創建一個vue.config.js

再然后因為vue-cli3內部高度集成了webpack,一般來說使用者不需要再去知道weboack做了什么,所以沒有暴露webpack的配置文件,但你依然可以創建vue.config.js 去修改默認的webpack

*一開始只有兩個選項: default (默認配置)和 Manually select features (手動配置)
默認配置只有 babel 和 eslint 其他的都要自己另外再配置,所以我們選第二項手動配置。

在每次選擇手動配置之后,會詢問你是否保存配置,也就是圖片中的 koro 選項,這樣以后我們在進行創建項目的時候 只需使用原先的配置 就可以了,而不用再進行配置。*

Vue CLI 3還附帶了一個完整的GUI
可以創建新項目,還可以管理項目中的插件和任務,它不需要Electron,只需用vue ui啟動它。

vue.config.js
vue-cli升級到3之后,減少了很多的配置文件,之前所有的配置文件都在vue create 搭建時preset預設 或者 后期可以通過 命令參數 、 vue.config.js 中配置,所有的配置項都濃縮到了vue.config.js這個文件中,所以學懂并會用vue.config.js文件很重要。

根據需要在根目錄下新建 vue.config.js自行配置,eg:(簡單配置,更多配置詳情參見官網:https://cli.vuejs.org/zh/config/)

module.exports = {
  baseUrl: '/',// 部署應用時的根路徑(默認'/'),也可用相對路徑(存在使用限制)
  outputDir: 'dist',// 運行時生成的生產環境構建文件的目錄(默認''dist'',構建之前會被清除)
  assetsDir: '',//放置生成的靜態資源(s、css、img、fonts)的(相對于 outputDir 的)目錄(默認'')
  indexPath: 'index.html',//指定生成的 index.html 的輸出路徑(相對于 outputDir)也可以是一個絕對路徑。
  pages: {//pages 里配置的路徑和文件名在你的文檔目錄必須存在 否則啟動服務會報錯
    index: {//除了 entry 之外都是可選的
      entry: 'src/index/main.js',// page 的入口,每個“page”應該有一個對應的 JavaScript 入口文件
      template: 'public/index.html',// 模板來源
      filename: 'index.html',// 在 dist/index.html 的輸出
      title: 'Index Page',// 當使用 title 選項時,在 template 中使用:<title><%= htmlWebpackPlugin.options.title %></title>
      chunks: ['chunk-vendors', 'chunk-common', 'index'] // 在這個頁面中包含的塊,默認情況下會包含,提取出來的通用 chunk 和 vendor chunk
    },
    subpage: 'src/subpage/main.js'//官方解釋:當使用只有入口的字符串格式時,模板會被推導為'public/subpage.html',若找不到就回退到'public/index.html',輸出文件名會被推導為'subpage.html'
  },
  lintOnSave: true,// 是否在保存的時候檢查
  productionSourceMap: true,// 生產環境是否生成 sourceMap 文件
  css: {
    extract: true,// 是否使用css分離插件 ExtractTextPlugin
    sourceMap: false,// 開啟 CSS source maps
    loaderOptions: {},// css預設器配置項
    modules: false// 啟用 CSS modules for all css / pre-processor files.
  },
  devServer: {// 環境配置
    host: 'localhost',
    port: 8080,
    https: false,
    hotOnly: false,
    open: true, //配置自動啟動瀏覽器
    proxy: {// 配置多個代理(配置一個 proxy: 'http://localhost:4000' )
      '/api': {
        target: '<url>',
        ws: true,
        changeOrigin: true
      },
      '/foo': {
        target: '<other_url>'
      }
    }
  },
  pluginOptions: {// 第三方插件配置
    // ...
  }
};

熱更新配置

在vue.config.js添加

chainWebpack: config => {
// 修復HMR
config.resolve.symlinks(true);
},
修改css部分熱更新還需要注釋掉   //extract: true,

css: {
//extract: true,// 是否使用css分離插件 ExtractTextPlugin
sourceMap: false,// 開啟 CSS source maps
loaderOptions: {},// css預設器配置項
modules: false// 啟用 CSS modules for all css / pre-processor files.
},

css預處理器

主要為css解決瀏覽器兼容、簡化CSS代碼 等問題
這樣,熱更新配置就完成了

創建項目目錄時出現的問題
vue create my-app報錯:write after end解決辦法。降低了npm的版本到@5.6.0。貌似是之前的npm版本6.1.0有點問題<br/" rel="nofollow">br/>解決辦法。降低了npm的版本到@5.6.0。貌似是之前的npm版本6.1.0有點問題<br/Vue CLI 3需要 nodeJs ≥ 8.9 (官方推薦 8.11.0+,你可以使用 nvm 或 nvm-windows在同一臺電腦中管理多個 Node 版本)

打包出現的問題
在根目錄下vue.config.js(如果沒有這個文件的話,可以直接在更目錄中添加一個,配置參考)文件中進行修改。

Vue-Router 利用了瀏覽器自身的hash 模式和 history 模式的特性來實現前端路由(通過調用瀏覽器提供的接口)

上述就是vue-cli@3.0使用方式和舊版本的差異的詳細內容,詳細使用情況還需要大家自己動手實驗使用過才能領會。如果想了解更多,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

新安县| 遵义县| 科尔| 南溪县| 和龙市| 翁源县| 尼勒克县| 平陆县| 九江县| 阿城市| 黄陵县| 济宁市| 饶平县| 杂多县| 丰顺县| 壶关县| 双牌县| 合水县| 西青区| 安丘市| 黄梅县| 阆中市| 桃江县| 阿瓦提县| 庆城县| 都江堰市| 阜康市| 平远县| 自治县| 乐业县| 长宁区| 长海县| 日喀则市| 汉沽区| 高州市| 禹州市| 平和县| 阿鲁科尔沁旗| 德令哈市| 赤壁市| 玛纳斯县|