当前位置: 首页 > news >正文

Webpack 4 学习01(基础配置)

Webpack 4 学习(基础配置和js文件的打包)

一、安装配置

  • 前提】安装node.js环境

    【官网下载】https://nodejs.org/zh-cn/
    安装教程不赘述

  • 创建项目文件夹

    例如创建如下文件夹webpack_demo1

  • 创建配置项

    npm init -y

    生成一个package.json文件 如下图

  • 全局安装webpack (不推荐,进行下一步操作)

    npm install webpack -g
  • 局部安装webpack(推荐)

    npm install webpack --save-dev
    • 另外,webpack 4要求安装包
    npm install webpack-cli --save-dev

一起安装

npm install webpack webpack-cli --save-dev

以下表示安装成功

  • 创建入口文件

    ./src/index.js

    任意编写index.js文件内容用于测试

  • 配置生产和开发模式

    打开package.json文件添加如下脚本

    "scripts": {
      "dev": "webpack --mode development",
      "build": "webpack --mode production"
    }

  • 现在运行:

    npm run dev

    生成dist/main.js ,其中 main.js 没有压缩

    npm run dev 表示 开发模式

    npm run build

    此时的main.js 被压缩 ,这便是生产模式

  • 接下来看看打包的js文件是否能够使用

    • 创建index.html 引入打包好的main.js
    <!DOCTYPE html>
    <html lang="en">
    <head>
      <meta charset="UTF-8">
      <meta name="viewport" content="width=device-width, initial-scale=1.0">
      <meta http-equiv="X-UA-Compatible" content="ie=edge">
      <title>Document</title>
      <script src="./main.js" charset="utf-8"></script>
    </head>
    <body>
    
    </body>
    </html>

  • 打开浏览器调试

输出结果表示打包成功,大功告成 !!!

​ 【参考文献】 https://www.valentinog.com/bl...

相关文章:

  • 我的zsh配置, 2019最新方案
  • Java基础篇
  • 数据库基础SQL知识面试题二
  • 取代Python多进程!伯克利开源分布式框架Ray
  • mysql常用命令汇总
  • 前端知识点整理(待续)
  • Angular 响应式表单 基础例子
  • 2019年2月22日 807. Max Increase to Keep City Skyline
  • 微信小程序:实现悬浮返回和分享按钮
  • 巨杉中标渤海银行,股份制银行再下一城
  • python使用elasticsearch模块操作elasticsearch
  • “春节十二响”C语言代码开源了,你要提 PR 吗?
  • VS 2019要来了,是时候了解一下C# 8.0新功能
  • 北大AI公开课2019 | 雷鸣:人工智能革命与机遇
  • 基于Gitflow分支模型自动化Java项目工作流
  • [LeetCode] Wiggle Sort
  • 3.7、@ResponseBody 和 @RestController
  • 8年软件测试工程师感悟——写给还在迷茫中的朋友
  • AzureCon上微软宣布了哪些容器相关的重磅消息
  • EventListener原理
  • Linux下的乱码问题
  • Nacos系列:Nacos的Java SDK使用
  • node和express搭建代理服务器(源码)
  • supervisor 永不挂掉的进程 安装以及使用
  • TiDB 源码阅读系列文章(十)Chunk 和执行框架简介
  • 阿里云Kubernetes容器服务上体验Knative
  • 关于 Linux 进程的 UID、EUID、GID 和 EGID
  • 关于Flux,Vuex,Redux的思考
  • 机器学习学习笔记一
  • 简单易用的leetcode开发测试工具(npm)
  • 理解 C# 泛型接口中的协变与逆变(抗变)
  • 设计模式(12)迭代器模式(讲解+应用)
  • 使用SAX解析XML
  • 它承受着该等级不该有的简单, leetcode 564 寻找最近的回文数
  • 跳前端坑前,先看看这个!!
  • 微信公众号开发小记——5.python微信红包
  • elasticsearch-head插件安装
  • !!java web学习笔记(一到五)
  • # .NET Framework中使用命名管道进行进程间通信
  • # 执行时间 统计mysql_一文说尽 MySQL 优化原理
  • (4)事件处理——(6)给.ready()回调函数传递一个参数(Passing an argument to the .ready() callback)...
  • (delphi11最新学习资料) Object Pascal 学习笔记---第8章第5节(封闭类和Final方法)
  • (pt可视化)利用torch的make_grid进行张量可视化
  • (Redis使用系列) SpirngBoot中关于Redis的值的各种方式的存储与取出 三
  • (二) Windows 下 Sublime Text 3 安装离线插件 Anaconda
  • (附源码)apringboot计算机专业大学生就业指南 毕业设计061355
  • (论文阅读22/100)Learning a Deep Compact Image Representation for Visual Tracking
  • (原創) 如何動態建立二維陣列(多維陣列)? (.NET) (C#)
  • (转) RFS+AutoItLibrary测试web对话框
  • .NET 回调、接口回调、 委托
  • .NET学习教程二——.net基础定义+VS常用设置
  • .php结尾的域名,【php】php正则截取url中域名后的内容
  • ::前边啥也没有
  • [].slice.call()将类数组转化为真正的数组
  • [ai笔记4] 将AI工具场景化,应用于生活和工作