Webpack安装和配置

一、安装和配置webpack

  1、全局安装webpack

  这样就安装好了webpack,可以再全局通过webpack -v来查看是否安装成功。

  2、先创建项目目录结构,根目录是mywebpack。进入项目根目录,执行:npm init,生成package.json文件,内容就是一堆json数据,基本就是在终端里输入的信息。

  3、进入项目根目录局部安装webpack,进入./mywebpack,执行:npm install webpack --save-dev,局部安装webpack成功了,根目录下会出现一个node_modules文件夹。

  以后我们在根目录下通过npm安装的各种依赖包都会默认安装到这个文件夹下面。

  然后,webpack -v可以查看webpack版本;或进入node交互环境,require("webpack"),看能不能获取到webpack

  现在我们项目的webpack框架就准备好了,接下来我们要使用它来处理各种东西了。

   4、进入根目录,建两个文件夹,分别为src和dist

  (1)src文件夹:用来存放我们编写的javascript代码,可以简单的理解为用JavaScript编写的模块。

  (2)dist文件夹:用来存放供浏览器读取的文件,这个是webpack打包成的文件。

  在dist下建立一个index.html文件,写入以下代码

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <title>Webpack Sample Project</title>
  </head>
  <body>
    <div id='root'>
    </div>
    <script src="bundle.js"></script>
  </body>
</html>

  这里引入的bundle.js 可以先不管,这个文件现在还没有,这是用webpack打包后生成的文件

  src下建一个index.js文件,写入代码:

document.write("It works.");

  5、在根目录新建一个webpack.config.js文件,然后开始配置:

const path = require('path');
module.exports={
    //入口文件的配置项
    entry:{
        entry:'./src/index.js'
    },
    //出口文件的配置项
    output:{
        //输出的路径,用了Node语法
        path:path.resolve(__dirname,'dist'),
        //输出的文件名称
        filename:'bundle.js'
    },
    mode:"development",//注意最新版本必须加mode,否则会报错
    //模块:例如解读CSS,图片如何转换,压缩
    module:{},
    //插件,用于生产模版和各项功能
    plugins:[],
    //配置webpack开发服务功能
    devServer:{}
}

  6、然后在终端输入:webpack,进行打包,之后我们就可以在disc目录下看到打包生产的bundle.js文件,并能成功运行index.html文件。

  注意:上面的mode项在最新版本是必须得加的,否则会给你报下面这个错误

二、多入口、多出口配置

const path = require('path');
module.exports={
    //入口文件的配置项
    entry:{
        entry:'./src/index.js',
        entry2:'./src/Greeter.js'
    },
    //出口文件的配置项
    output:{
        //输出的路径,用了Node语法
        path:path.resolve(__dirname,'dist'),
        //输出的文件名称
        filename:'[name].js'
    },
    mode:"development",
    //模块:例如解读CSS,图片如何转换,压缩
    module:{},
    //插件,用于生产模版和各项功能
    plugins:[],
    //配置webpack开发服务功能
    devServer:{}

  在入口文件中,新增了一个entry.js的入口文件,这个文件需要手动建立,出口文件的filename,我们把原来的bundle.js修改成了[name].js

  [name]的意思是根据入口文件的名称,打包成相同的名称,有几个入口文件,就可以打包出几个文件。

  在终端输入 webpack 进行打包

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

火兰

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值