webpack安装使用

       本文大量借鉴 《 入门Webpack,看这篇就够了》一文,这是一篇超清晰的好文,有兴趣的朋友可以去看看    

 一,什么是webpack

    通俗的理解,webpack就是一个专门来打包项目的工具,它会分析你的项目结构,找到各个javascript模块以及其它的一些浏览器不能直接运行的拓展语言(Scss,TypeScript等),并将它们打包转为浏览器可以识别的格式。

    二,安装
           我们用npm安装webpack,那npm又是什么呢?npm是Node.js的包管理器,是Node Packaged Modules的简称,我们只需要安装node.js就安装了npm,安装了npm后,我们接着把git也装了。这一套下来,以后你要装什么工具基本都不需要再装其他的另外的东西了。安装git也是很简单的,跟node.js一样,一路next即可。
安装好git之后,点击开始菜单,找到git文件夹,找到其目录下的Git Bash(类似于命令行窗口),点击打开它。










开始进入正题啦,全局安装webpack,命令行窗口(终端)上输入
npm install -g webpack



接下来我们创建一个空文件夹(我这里取名为 0520webpack),然后在命令行下路径转到该文件夹下, 在命令行输入 npm init  
    这个指令主要是生成package.json文件, 这是一个标准的npm说明文件,里面蕴含了丰富的信息,包括当前项目的依赖模块,自定义的脚本任务等等。
        输入后,命令行窗口会出现一些需要你填写的信息,对于现在的我们来说,这些不重要,如果不想填,或者不知道怎么填就一路回车即可。
   上一步好了之后,我们再输入  npm install --save-dev  webpack (这是将webpack安装到你的项目目录里)。
   接下来,我们打开刚才新建的文件夹,在里面再创建两个文件夹app文件夹和public文件夹
   app文件夹用来存放原始数据和我们将写的JavaScript模块,public文件夹用来存放准备给浏览器读取的html文件(包括使用webpack生成的打包后的js文件以及一个index.html文件)。在这里还需要创建三个文件,index.html文件放在public文件夹中,两个js文件(Greeter.js和main.js)放在app文件夹中,此时项目结构如下图所示:



index.html文件只有最基础的html代码,它唯一的目的就是加载打包后的js文件(bundle.js)

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

Greeter.js只包括一个用来返回包含问候信息的html元素的函数。

// Greeter.js
module.exports = function() {
  var greet = document.createElement('div');
  greet.textContent = "Hi there and greetings!";
  return greet;
};

main.js用来把Greeter模块返回的节点插入页面。

//main.js 
var greeter = require('./Greeter.js');
document.getElementById('root').appendChild(greeter());

   三,运行webpack
  前面说了这么多,我们还没运行看结果呢,命令行窗口(终端)下,转到项目目录下 输入指令:
   如果是全局webpack app/main.js public/bundle.js  
   如果是局部:node_modules/.bin/webpack app/main.js public/bundle.js
         运行后再去我们的项目目录下,你就会看到生成了bundle.js文件,这个文件就是打包好的文件




    最后运行index.html你就看到你成功啦!!但是你发现这么一大串东西,是不是很容易输错,怎么解决?让我们继续看下去。

 四,简化操作

     通过配置文件来使用Webpack

 在当前项目目录文件夹下新建一个名为webpack.config.js的文件,并在其中进行最最简单的配置,如下所示,它包含入口文件路径和存放打包后文件的地方的路径。

module.exports = {
  entry:  __dirname + "/app/main.js",//唯一入口文件
  output: {
    path: __dirname + "/public",//打包后的文件存放的地方
    filename: "bundle.js"//打包后输出文件的文件名
  }
}
  没错,这样就配置好啦,不过这是最基本的配置而已。但是足够了。
  我们先把刚才生成的bundle.js文件删了,再次到命令行窗口测试一下,这次的配置有没有成功。
  命令行窗口,路径转到项目目录下,输入 webpack 回车
  上面的指令是全局下的指令,如果你安装的是局部,那就执行这条指令
   node_modules/.bin/webpack



这就行啦?没错!查看我们的项目目录下的public文件夹,bundle.js又生成啦。

  五,更快捷的方式
  
  由于有的小伙伴是用局部指令来执行webpack,这还是有可能会出错,因此我们还可以通过配置,来进一步简化我我们的操作。那么在哪里呢?就是我们的package.json文件啦,具体哪里看下图。



  最后我们来测试一下,我们这次的配置是否成功, 命令行窗口,路径转到项目目录下,输入 npm start 回车




  这就行啦?没错!查看我们的项目目录下的public文件夹,bundle.js又生成啦。
  
  教程到此结束啦,快去多练练吧。







评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值