webpack相关以及搭建react环境

webpack官网:https://www.webpackjs.com/                      
一、webpack介绍
    1、webpack  是一个现代 javascript 应用程序的静态模块打包器
        
    入口
    输出
    插件
二、安装
    1、webpack     全局安装    
        npm i webpack -g
        npm i webpack-cli -g
        webpack -v    查看全局的版本
    2、项目内安装
        npm init -y
        npm i webpack -D
        npm i webpack-cli -D
 
        查看项目内的webpack的版本:
复制代码
//在package.json
scripts:{
        'test':'webpack  --version'
}

//然后在控制台npm run test
复制代码
三、代码
       
        webpack --mode development
        局部的
        "build":"webpack -W"
   
3、解决缓存问题
        bundle[hash:8].js
        html文件自动引入js文件,需下载html-webpack-plugin插件
        npm i html-webpack-plugin
4、每次打包都会产生一个js文件,
    目的只保留最新打包的文件,旧的都删除
        npm i  clean-webpack-plugin 
5、打包css文件
    style-loader  
    css-loader
     npm i style-loader css-loader
6、打包图片  
     url-loader  file-loader
     npm i url-loader  file-loader
7、在服务器上运行(会打开8080端口)
      webpack-dev-server(自动有热更新的功能)
      npm i  webpack-dev-server
复制代码
devServer:{  //webpack-dev-server的配置
        port:3000,
        proxy:{
            "/lg":{
                "target":"https://m.lagou.com",
                "changeOrigin":true,
                "pathRewrite":{
                    "^/lg":"/"
                }
            }
        }
    },
复制代码
    可以自己改端口,比如把8080端口改成3000端口,同时在devServer里面可以配置proxy代理
 
8、搭建简单的react脚手架环境
     npm i babel-loader @babel/core @babel/preset-env
    //配置babel
    npm react react-dom @babel/preset-react
    配置规则
复制代码
{
    test: /\.js$/,
        exclude: /(node_modules)/,  //排除node_modules
        use: {
            loader: 'babel-loader',
            options: {
                presets: ['@babel/preset-env','@babel/preset-react']
            }
        }
}
复制代码
posted @ 2020-06-13 11:20  竹子up  阅读(156)  评论(0编辑  收藏  举报