<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        Vue Cli3 創建項目的方法步驟

        來源:懂視網 責編:小采 時間:2020-11-27 22:06:14
        文檔

        Vue Cli3 創建項目的方法步驟

        Vue Cli3 創建項目的方法步驟:最近的開發項目中使用了vue-cli 3.0,使用體驗可以說非常棒了,模板更加制定化,配置更加簡潔。以下總結下應用過程中的一些經驗。 1. 安裝 npm install -g @vue/cli 2. 創建一個項目 vue create iview-admin # OR vue ui
        推薦度:
        導讀Vue Cli3 創建項目的方法步驟:最近的開發項目中使用了vue-cli 3.0,使用體驗可以說非常棒了,模板更加制定化,配置更加簡潔。以下總結下應用過程中的一些經驗。 1. 安裝 npm install -g @vue/cli 2. 創建一個項目 vue create iview-admin # OR vue ui

        最近的開發項目中使用了vue-cli 3.0,使用體驗可以說非常棒了,模板更加制定化,配置更加簡潔。以下總結下應用過程中的一些經驗。

        1. 安裝

        npm install -g @vue/cli

        2. 創建一個項目

        vue create iview-admin
        # OR
        vue ui

      1. default (babel, eslint) 默認套餐,提供 babel 和 eslint 支持。
      2. Manually select features 自己去選擇需要的功能,提供更多的特性選擇。比如如果想要支持 TypeScript ,就應該選擇這一項。
        1. TypeScript 支持使用 TypeScript 書寫源碼。
        2. Progressive Web App (PWA) Support PWA 支持。
        3. Router 支持 vue-router 。
        4. Vuex 支持 vuex 。
        5. CSS Pre-processors 支持 CSS 預處理器。
        6. Linter / Formatter 支持代碼風格檢查和格式化。
        7. Unit Testing 支持單元測試。
        8. E2E Testing 支持 E2E 測試。

        3. 運行項目

        $ npm run serve

        4. 在根目錄創建 vue.config.js 空文件,配置 文件

        module.exports = {
         /** 區分打包環境與開發環境
         * process.env.NODE_ENV==='production' (打包環境)
         * process.env.NODE_ENV==='development' (開發環境)
         * baseUrl: process.env.NODE_ENV==='production'?"https://cdn.didabisai.com/front/":'front/',
         */
         // 基本路徑
         baseUrl: '/',
         // 
        輸出文件目錄 outputDir: 'dist', // eslint-loader 是否在保存的時候檢查 lintOnSave: true, // use the full build with in-browser compiler? // https://vuejs.org/v2/guide/installation.html#Runtime-Compiler-vs-Runtime-only // compiler: false, // webpack配置 // see https://github.com/vuejs/vue-cli/blob/dev/docs/webpack.md chainWebpack: () => {}, configureWebpack: () => {}, //如果想要引入babel-polyfill可以這樣寫 // configureWebpack: (config) => { // config.entry = ["babel-polyfill", "./src/main.js"] // }, // vue-loader 配置項 // https://vue-loader.vuejs.org/en/options.html // vueLoader: {}, // 生產環境是否生成 sourceMap 文件 productionSourceMap: true, // css相關配置 css: { // 是否使用css分離插件 ExtractTextPlugin extract: true, // 開啟 CSS source maps? sourceMap: false, // css預設器配置項 loaderOptions: {}, // 啟用 CSS modules for all css / pre-processor files. modules: false }, // use thread-loader for babel & TS in production build // enabled by default if the machine has more than 1 cores parallel: require('os').cpus().length > 1, // 是否啟用dll // See https://github.com/vuejs/vue-cli/blob/dev/docs/cli-service.md#dll-mode // dll: false, // PWA 插件相關配置 // see https://github.com/vuejs/vue-cli/tree/dev/packages/%40vue/cli-plugin-pwa pwa: {}, // webpack-dev-server 相關配置 devServer: { // open: process.platform === 'darwin', // 自動打開瀏覽器 open: true, host: '0.0.0.0', port: 8080, https: false, hotOnly: false, // 處理跨域問題 proxy: {}, // 設置代理 before: app => {} }, // 第三方插件配置 pluginOptions: { // ... } }

        設置代理

        # string
        
        module.exports = {
        
         devServer: {
        
         proxy: '<url>'
        
         }
        
        }
        
         
        
        # Object
        
        module.exports = {
        
         devServer: {
        
         proxy: {
        
         '/api': {
        
         target: '<url>',
        
         ws: true,
        
         changeOrigin: true
        
         },
        
         '/foo': {
        
         target: '<other_url>'
        
         }
        
         }
        
         }
        
        }

        啟用dll

        啟用dll后,我們的動態庫文件每次打包生成的vendor的[chunkhash]值就會一樣,其值可以是 true/false,也可以制定特定的代碼庫。

        module.exports = {
        
         dll: true
        
        }
        
        module.exports = {
        
         dll: [
        
         'dep-a',
        
         'dep-b/some/nested/file.js'
        
         ]
        
        }

        靜態資源路徑

        相對路徑

      3. 靜態資源路徑以 @  開頭代表  <projectRoot>/src
      4. 靜態資源路徑以 ~  開頭,可以引入node modules內的資源
      5. public文件夾里的靜態資源引用

        # 在 public/index.html中引用靜態資源
        
        <%= webpackConfig.output.publicPath %>
        
        <link rel="shortcut icon" href="<%= webpackConfig.output.publicPath %>favicon.ico" rel="external nofollow" >
        
        # vue templates中,需要在data中定義baseUrl
        
        <template>
        
         <img :src="`${baseUrl}my-image.png`">
        
        </template>
        
        <script>
        
         data () {
        
         return {
        
         baseUrl: process.env.BASE_URL
        
         }
        
         }
        
        </script>

        webpack配置修改

        用 webpack-chain 修改webpack相關配置,強烈建議先熟悉webpack-chain和vue-cli 源碼,以便更好地理解這個選項的配置項。

        對模塊處理配置

        // vue.config.js
        
        module.exports = {
        
         chainWebpack: config => {
        
         config.module
        
         .rule('js')
        
         .include
        
         .add(/some-module-to-transpile/) // 要處理的模塊
        
         }
        
        }

        修改webpack Loader配置

        // vue.config.js
        
        module.exports = {
        
         chainWebpack: config => {
        
         config.module
        
         .rule('scss')
        
         .use('sass-loader')
        
         .tap(options =>
        
         merge(options, {
        
         includePaths: [path.resolve(__dirname, 'node_modules')],
        
         })
        
         )
        
         }
        
        }

        修改webpack Plugin配置

        // vue.config.js
        
        module.exports = {
        
         chainWebpack: config => {
        
         config
        
         .plugin('html')
        
         .tap(args => {
        
         return [/* new args to pass to html-webpack-plugin's constructor */]
        
         })
        
         }
        
        }
        
        

        eg: 在本次項目較小,只對uglifyjs進行了少量的修改,后期如果還有配置上優化會繼續添加。

        chainWebpack: config => {
        
         if (process.env.NODE_ENV === 'production') {
        
         config
        
         .plugin('uglify')
        
         .tap(([options]) =>{
        
         // 去除 console.log
        
         return [Object.assign(options, {
        
         uglifyOptions: { compress: {
        
         drop_console : true,
        
         pure_funcs: ['console.log']
        
         }}
        
         })]
        
         })
        
         }
        
        }

        全局變量的設置

        在項目根目錄創建以下項目:

        .env # 在所有環節中執行
        
        .env.local # 在所有環境中執行,git會ignored
        
        .env.[mode] # 只在特定環境執行( [mode] 可以是 "development", "production" or "test" )
        
        .env.[mode].local # 在特定環境執行, git會ignored
        
        .env.development # 只在生產環境執行
        
        .env.production # 只在開發環境執行

        在文件里配置鍵值對:

        # 鍵名須以VUE_APP開頭
        
        VUE_APP_SECRET=secret
        
        

        在項目中訪問:

        console.log(process.env.VUE_APP_SECRET)

        這樣項目中的 process.env.VUE_APP_SECRET 就會被 secret 所替代。

        vue-cli 3 就項目性能而言已經相當友好了,私有制定性也特別強,各種配置也特別貼心,可以根據項目大小和特性制定私有預設,對前期項目搭建而言效率極大提升了。

        具體請查看 Vue Cli 官網

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        Vue Cli3 創建項目的方法步驟

        Vue Cli3 創建項目的方法步驟:最近的開發項目中使用了vue-cli 3.0,使用體驗可以說非常棒了,模板更加制定化,配置更加簡潔。以下總結下應用過程中的一些經驗。 1. 安裝 npm install -g @vue/cli 2. 創建一個項目 vue create iview-admin # OR vue ui
        推薦度:
        標簽: 步驟 方法 過程
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 黄页网站免费观看| 69精品免费视频| 永久在线观看免费视频| 97视频免费观看2区| 四虎成人免费观看在线网址| 中文字幕精品亚洲无线码二区| 亚洲国产精品久久网午夜| 色屁屁在线观看视频免费| 亚洲成年人免费网站| 亚洲精品尤物yw在线影院| 亚洲人成网站日本片| 久久一区二区三区免费| 成年美女黄网站色大免费视频| 亚洲AV区无码字幕中文色| 四虎国产精品成人免费久久 | 91国内免费在线视频| 好大好硬好爽免费视频| 亚洲成a∨人片在无码2023| 少妇无码一区二区三区免费| 亚洲男人天堂2020| 一个人免费观看视频在线中文 | 亚洲精品无码成人片久久| 精品国产_亚洲人成在线| 亚洲精品免费网站| 亚洲欧美成aⅴ人在线观看| 中国人xxxxx69免费视频| 亚洲视频无码高清在线| 免费观看国产网址你懂的| 亚洲免费在线播放| 精品国产免费一区二区三区香蕉| 亚洲成av人片天堂网老年人| 国产精品亚洲专区无码唯爱网| 亚洲精品成人区在线观看| 免费人成毛片动漫在线播放| 亚洲av专区无码观看精品天堂| 无码国产精品一区二区免费vr | 婷婷国产偷v国产偷v亚洲| 久久精品国产亚洲精品| 狼色精品人妻在线视频免费| 国产亚洲精品观看91在线| 午夜时刻免费入口|