<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
        主站蜘蛛池模板: 亚洲αv久久久噜噜噜噜噜| 日韩免费三级电影| 亚洲国产精品无码成人片久久| 日韩成人毛片高清视频免费看| 国产青草视频免费观看97 | 亚洲成A人片777777| a视频免费在线观看| 亚洲AV永久纯肉无码精品动漫| 国产成人免费视频| 18gay台湾男同亚洲男同| 国产成人精品久久免费动漫| 亚洲图片激情小说| 妞干网免费观看视频| 男人的天堂av亚洲一区2区| 亚洲精品国产日韩无码AV永久免费网| 免费在线人人电影网| 亚洲中文字幕无码一区二区三区| 久久精品乱子伦免费| 亚洲国产成人精品电影| 麻豆精品国产免费观看| 久久性生大片免费观看性| 亚洲日本中文字幕区| 午夜电影免费观看| 人碰人碰人成人免费视频| 亚洲国产精品无码一线岛国| 亚洲免费视频播放| 理论片在线观看免费| 亚洲综合国产精品| 午夜爱爱免费视频| 日本在线免费播放| 亚洲高清乱码午夜电影网| 久久久久亚洲精品无码网址 | 中国一级毛片免费看视频| 久久精品国产亚洲精品2020| 在线视频免费观看www动漫| a毛片成人免费全部播放| 亚洲国产日韩在线成人蜜芽| 亚洲日本中文字幕一区二区三区 | 德国女人一级毛片免费| 中国一级特黄的片子免费 | 亚洲日韩av无码中文|