2024基于webpack从0搭建vue项目,vue2

"@babel/core": "^7.17.5",

"@babel/preset-env": "^7.16.11",

"babel-loader": "^8.2.3",

"clean-webpack-plugin": "^4.0.0",

"css-loader": "^6.6.0",

"file-loader": "^6.2.0",

"html-webpack-plugin": "^5.5.0",

"sass": "^1.49.8",

"sass-loader": "^12.6.0",

"style-loader": "^3.3.1",

"url-loader": "^4.1.1",

"vue-loader": "^17.0.0",

"vue-template-compiler": "^2.6.14",

"webpack": "^5.69.1",

"webpack-cli": "^4.9.2",

"webpack-dev-server": "^4.7.4"

},

“dependencies”: {

"vue": "^3.2.31"

}

}




### []( )在根目录下创建一个 webpack.config.js 文件



// 导入核心模块 path

const path = require(‘path’)

// 导入自动生成html文件的插件

const HtmlWebpackPlugin = require(‘html-webpack-plugin’)

// 导入自动清除 dist 目录的插件

const {

CleanWebpackPlugin

} = require(‘clean-webpack-plugin’)

// 配置文件

module.exports = {

// 配置入口

entry: './src/main.js',

// webpack.config.js 文件 配置出口

output: {

    filename: 'main[hash:8].js', // 出口文件的名称  'main[hash:8].js' 清除缓存

    path: path.join(__dirname, '/dist') // 出口文件生成的路径

},

// 配置 mode, development 开发环境  production 生产环境

mode: 'production',

// 配置解析

resolve: {

    alias: {

        // key: value

        '@': path.join(__dirname, 'src')

    },

    // 配置可省略的后缀

    extensions: ['.js', '.css', '.less', '.vue']

},

// 配置源码映射

// devtool: 'source-map',

// 配置 loader

module: {

    // 配置规则

    rules: []

},

// 配置 plugin

plugins: [

    // 自动生成html文件的插件

    new HtmlWebpackPlugin({

        filename: 'index.html',

        template: path.join(__dirname, './public/index.html')

    }),

    // 自动清除 dist 目录插件

    new CleanWebpackPlugin(),

    // 配置 vue loader 插件

],

// 配置开启服务器的信息

devServer: {

    static: {

        directory: path.join(__dirname, 'dist'),

    },

    compress: true,

    port: 80,

},

performance: {

    hints: false

}

}




> **按照上述配置把对应文件给创建好,如果没有文件就会报错,**



### []( )安装插件 html-webpack-plugin clean-webpack-plugin



​ **是因为 webpack.config.js 里面有用到**



> npm i -D html-webpack-plugin clean-webpack-plugin



### []( )配置我们的入口文件



> **在根目录里新建一个 src 的文件夹**在里面新建一个 main.js 文件 写入js代码 然后打包后户减少



打包前

function fn() {

console.log('孙志豪')

}

fn()

打包后 会多一个 dist 文件 把 function 去掉了

console.log(‘孙志豪’)




### []( )在根目录里面新建一个 public 文件夹



> ​ **在新建一个 index.html** 输入 ! 回车 初始化  

> ​ **写入一个 div 为 id=“#app”**



### []( )找到 package.json 文件 配置打包命令



“scripts”: {

"build": "webpack --config webpack.config.js"

},




### []( )然后运行打包的命令



> npm run build

> 

> 此时会多一个叫 dist 的文件夹



![在这里插入图片描述](https://img-blog.csdnimg.cn/16bdd0dba0e24cabb128d981af94ec5d.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5pyJ5Lik5oqK5Yi35a2Q,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center)



[]( )设置启动 server 服务器

------------------------------------------------------------------------------



### []( )安装 server 启动的服务器



> npm i webpack-dev-server -D



### []( )找到 package.json 文件 配置启动服务



“scripts”: {

"build": "webpack --config webpack.config.js",

"serve": "webpack serve"

},




### []( )在webpack.config.js 配置开启服务器的信息



devServer: {

static: {

    directory: path.join(__dirname, 'dist'), // 出口写什么这里就写什么

},

port: 8080, // 配置端口号

open: true, // 自动打开浏览器

hot:true, // 开启模块的热更新

},




### []( )运行服务



> npm run serve



![在这里插入图片描述](https://img-blog.csdnimg.cn/1e2e4af4d2af471fac73ce8e71f2d75f.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5pyJ5Lik5oqK5Yi35a2Q,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center)



[]( )安装loader

-----------------------------------------------------------------------



### []( )webpack css 样式 引入报错 和 scss 语法错误



![在这里插入图片描述](https://img-blog.csdnimg.cn/92c060515c014bf9ae8fd5d088cf8f8f.png#pic_center)



> 这些操作之前需要先安装 ‘style-loader’, ‘css-loader’, ‘sass-loader’  

> 命令 npm i css-loader style-loader sass sass-loader -D



1、在src,目录下新建一个你的css文件

2、 安装完成 在 webpack.config.js 找到 rules 配置 css loader

// 配置规则

rules: [

    // * 解析css loader

    {

        test: /\.css$/,

        use: [

            "style-loader",

            "css-loader"

        ]

    },



    // * 解析Scss样式  注意: 配置的顺序是反着来的  从大到小 从右到左

    {

        test: /\.s[ca]ss$/, 

        use: ['style-loader', 'css-loader', 'sass-loader']

    },

]




### []( )字体 图片 或者别的资源 url-loader file-loader url-loader 依赖于 file-loader



命令 npm i url-loader file-loader -D

安装完成 在 webpack.config.js 找到  rules 配置

   rules: [

       // * 解析图片 的 loader

        {

            test: /\.(png|jpg|gif|svg|webp|jpeg)$/,

            use: "url-loader"

        },

    ] 



### []( )安装 babel-loader 用来 让 es6代码让浏览器识别的了



> 命令 npm install -D babel-loader @babel/core @babel/preset-env



rules: [

        //  * 解析es6语法 转换 es5 

        {

            test: /\.m?js$/,

            exclude: /(node_modules|bower_components)/,

            use: {

                loader: 'babel-loader',

                options: {

                    presets: ['@babel/preset-env']

                }

            }

        },

  ] 



> 官网: https://www.webpackjs.com/loaders/babel-loader/



### []( )vue-loader 这样安装是 vue3.0 版本



官方网址 https://vue-loader.vuejs.org/zh/



> 命令 npm i vue  

> 命令 npm install -D vue-loader vue-template-compiler



#  最后

**自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。**

**深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。**

**因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。**

![img](https://img-blog.csdnimg.cn/img_convert/2c9fd03ae47be1f4d6f1cdde2a733f21.jpeg)

![](https://img-blog.csdnimg.cn/img_convert/de5f9bcc014304c2cec9144627513481.png)

![](https://img-blog.csdnimg.cn/img_convert/b014fcf0308bd586a234c70ed6db39bf.png)

**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!**

[**如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!**](https://bbs.csdn.net/topics/618191877)

**由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!**
己不成体系的自学效果低效漫长且无助。**

**因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。**

[外链图片转存中...(img-BJjKYwm9-1715283794157)]

[外链图片转存中...(img-O3BYpFIs-1715283794157)]

[外链图片转存中...(img-OWcdBCq4-1715283794158)]

**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!**

[**如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!**](https://bbs.csdn.net/topics/618191877)

**由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!**
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值