Webpack5 搭建Vue项目(进阶版)

Webpack5 搭建Vue项目(进阶版)

提示:中间隔了好长时间,我胡汉三又回来继续更新了!!!😂😂😂


文章目录


前言

提示:文章涉及的一些内容仅供参考:

大多数情况下,大家在项目开发的过程中,基本很少去说让开发人员去自助的搭建一个Vue项目。基本都是使用现成的一些模版项目,直接在上面进行一个二次的开发(当然这样也是最节省时间!!!!!)


一、进阶版本有哪些特点?

1. 首先进阶版本对【开发环境】和【线上环境】的配置进行了区分。
2. 本文的【示例】主要是代理服务器的一个体现(主要是有这样的思想,也方便后续想要对项目进行懒加载,分包等优化配置进行环境区分。便于管理项目)

这里就不做过多的赘述了,大家可以看下面的第二步骤

二、主要的文件代码如下

1.设置一个公共配置 webpack.common文件

代码如下(示例):

javascript 复制代码
const path =require('path')
const HtmlWebpackPlugin =require('html-webpack-plugin')
const { VueLoaderPlugin } = require('vue-loader')
module.exports={
    entry:'./src/index.js',
    output:{
        path:path.resolve(__dirname,'dist'),
        filename:'[name].bundle.js',
        clean: true,
    },
    module:{
        rules:[
            {
                test: /\.css$/i,
                use: ["style-loader", "css-loader"],
              },
              {
                test: /\.m?js$/,
                exclude: /(node_modules|bower_components)/,
                use: {
                  loader: 'babel-loader',
                  options: {
                    presets: ['@babel/preset-env']
                  }
                }
              },
              {
                test: /\.vue$/,
                loader: 'vue-loader'
              }
        ]
    },
    plugins:[new HtmlWebpackPlugin({
        template:'./public/index.html',
        title:'webpackTest',
        filename:'index.html'
    }),new VueLoaderPlugin()]
   
}

2.设置一个【dev】config文件

代码如下(示例):

javascript 复制代码
const {merge}=require('webpack-merge')
const common =require('./webpack.common.js')

module.exports=merge(common,{
    mode:'development',
    devServer:{
        static: './public',
        open:true,
    }
})

该处使用的url网络请求的数据。


3.设置一个【prod】config文件

javascript 复制代码
const {merge}=require('webpack-merge')

const common =require('./webpack.common.js')

module.exports=merge(common,{
    mode:'production'
})

三、配置 package.json文件

1.代码如下

javascript 复制代码
    // dev 代表的就是开发环境
    "dev":"webpack serve --config ./webpack.dev.js",
    //build 代表的是线上环境
    "build":"webpack --config ./webpack.prod.js"

总结如下(一定要看)

根据上面的思路,我们可以确定。如果后续我们的项目体积太大,就可以在prod.js中去配置对应的 webpack plugin去满足我们的项目分包,懒加载等打包的操作

1. 后续会去更新,如何在自己的项目中集成 eslint 和 prettier 工具去管理咱们项目的代码规范问题2. 集成到Git的生命周期中的代码提交监测和修复的功能

相关推荐
Mh8 分钟前
虚拟滚动真的比普通滚动性能更好吗?
前端·javascript·性能优化
pe7er12 分钟前
React + Ant Design 中的 IME (输入法合成)安全输入组件
前端
Super 含1 小时前
Android 启动优化(二):TTID、TTFD 与 Macrobenchmark 启动性能测量
前端
Python私教1 小时前
别急着加 llms.txt:企业官网面向 AI 搜索的工程清单
前端·人工智能·seo
东方小月1 小时前
从零开发一个 Coding Agent(十三):实现安全的 read 文件读取工具
前端·人工智能·全栈
东方小月1 小时前
从零开发一个 Coding Agent(十二):实现版本化 JSONL 与真实 CLI 入口
前端·设计模式·前端框架
FL16238631292 小时前
室内易燃物识别易燃评估室内易燃程度识别分割数据集labelme格式1015张85类别
java·服务器·前端
用户059540174462 小时前
把 AI 长期记忆去重测试从 20 分钟压到 40 秒,重复率从 18% 干到 1.5%
前端·css
kyriewen3 小时前
我把 AI 写的并发请求控制器手写了一遍——3 个语义我当时根本讲不清
前端·javascript·面试
_codemonster3 小时前
Vue中的ref和reactive到底在干嘛
前端·javascript·vue.js