第一单元(初识webpack-webpack的功能-webpack的初步使用)

#课程目标

  1. 了解webpack出现的意义,以及webpack解决的前端问题

  2. 掌握webpack的使用流程和步骤

  3. 掌握webpack相关的命令

  4. 了解webpack的打包原理

#知识点

  1. webpack是node的一个包,该包的功能主要是用来构建前端的开发环境!

  2. webpack主要核心功能有三点:

    • 能够把以commonjs方式开发的前端代码转换成浏览器可以识别的代码
    • 能够把各种前端非js的资源使用对应的loader转换成js,从而可以按照commonjs的方式进行加载
    • 提供插件功能,完美配合市面上的其他工具进行环境构建。(比如bable)
  3. webpack使用流程

    • 使用命令 npm install webpack --save-dev本地安装webpack
    • 使用命令 npm install webpack-cli -save-dev本地安装webpack-cli
    • 在项目根目录创建 webpack.config.js,并编写必要配置
    • 在命令行执行 npx webpack命令,查看打包结果
  4. webpack相关命令 请参阅 cli文档

  5. 简单阅读webapck打包后的代码,理解wabpack把commonjs格式的代码转换成浏览器可以识别的代码的原理。

#授课思路

#案例和作业

参考以下网站

看看会员

使用webapck搭建出对应的开发环境,考虑如下问题:

  1. 该项目有三个页面,最后希望这三个页面可以相互跳转
  2. 如何以模块化(commonjs)的方式开发
  3. 在模块化构建的时候,如何处理css、html、图片类的文件。

参考以下目录结构和配置项

|-- kankanvip
|-- package-lock.json
|-- package.json
|-- webpack.config.js
|-- dist
| |-- index.html
| |-- index.js
| |-- list.html
| |-- list.js
| |-- privilege.html
| |-- privilege.js
|-- src
|-- assert
|-- common
|-- page
| |-- index
| | |-- index.js
| |-- list
| | |-- index.js
| |-- privilege
| |-- index.js
|-- template
|-- index.html
|-- list.html
|-- privilege.html

webapck.config.js中的内容

const path = require('path');
const HtmlWebpackPlugin = require('html-webpack-plugin');
module.exports = {
entry: {
'index': path.join(__dirname, './src/page/index/index.js'),
'list': path.join(__dirname, './src/page/list/index.js'),
'privilege': path.join(__dirname, './src/page/privilege/index.js')
},
mode: 'development',
output: {
path: path.join(__dirname, './dist'),
filename: '[name].js'
},
plugins: [
new HtmlWebpackPlugin({
template: path.join(__dirname, './src/template/index.html'),
filename: 'index.html',
chunks: ['index']
}),
new HtmlWebpackPlugin({
template: path.join(__dirname, './src/template/list.html'),
filename: 'list.html',
chunks: ['list']
}),
new HtmlWebpackPlugin({
template: path.join(__dirname, './src/template/privilege.html'),
filename: 'privilege.html',
chunks: ['privilege']
})
]
}

vue第一单元(初识webpack-webpack的功能-webpack的初步使用)的更多相关文章

  1. vue第二单元(webpack的配置-学习webpack的常用配置)

    第二单元(webpack的配置-学习webpack的常用配置) #课程目标 掌握webpack的常用配置 掌握如何根据实际的需求修改webpack的对应配置 了解webpack-dev-server的 ...

  2. vue开发工具node.js及构建工具webpack

    1.概念 node.js:可以运行JavaScript的服务平台,可以把它当做一个后端程序,只是它的开发语言是JavaScript (通常情况下,JavaScript的运行环境都是浏览器,因此Java ...

  3. vue 项目中 自定义 webpack 的 配置文件(webpack.config.babel.js)

    webpack.config.babel.js,这样命名是想让webpack在编译的时候自动识别es6的语法,现在貌似不需要这样命名了,之前用webpack1.x的时候貌似是需要的 let path ...

  4. vue第四单元(初识vue-在页面中直接引入vue框架-学习使用vue语法-vue的指令-介绍data用法-methods用法)

    第四单元(初识vue-在页面中直接引入vue框架-学习使用vue语法-vue的指令-介绍data用法-methods用法) #课程目标 了解 vue 框架的特点 掌握创建 vue 实例 掌握 data ...

  5. react第一单元(简介)

    第一单元(react简介) 课程目标 理解react这个框架在前端开发中的地位 理解react诞生的原因和意义(react是一个用于快速构建前端视图的javaScript库) 理解什么是虚拟dom.原 ...

  6. 总结Vue第一天:简单介绍、基本常用知识、辅助函数

    总结Vue第一天:简单介绍.基本常用知识.辅助函数 中文官网:https://cn.vuejs.org/v2/guide/syntax.html 遇到不熟悉的可以先看一下官网,然后再看一下一些别人写的 ...

  7. OO第一单元作业小结

    前言 第一单元的主题是表达式求导,第一次作业是只带有常数和幂函数的求导,第二次作业加入了正余弦函数,第三次作业又加入了表达式嵌套,难度逐渐提升.总体来说前两次作业还易于应对,而第三次作业做得相对有些艰 ...

  8. BUAA面向对象设计与构造——第一单元总结

    BUAA面向对象设计与构造——第一单元总结 第一阶段:只支持一元多项式的表达式求导 1. 程序结构 由于是第一次接触面向对象的编程,加之题目要求不算复杂,我在第一次作业中并没有很好利用面向对象的特点, ...

  9. 2019_BUAAOO_第一单元总结

    前言 OO第一单元共有三次作业,分别为多项式求导.带有三角函数与幂函数的表达式求导.带有嵌套表达式因子的表达式求导.虽然这三次作业都离不开求导,可是每次作业的复杂度都是大大递增的.对于习惯于面向过程编 ...

随机推荐

  1. 交换机通过Loopback Detection检测(设备所在网络环路)

    组网图形  Loopback Detection简介 见上篇文章(详情见),不再赘述. 组网需求 如图1所示,某小型企业采用二层组网,所属VLAN为100.由于人员流动性大,网络拓扑变动频繁,变动往往 ...

  2. FL Studio中的音频剪辑功能

    音频剪辑是FL Studio中的特色功能,音频剪辑的目的是保持在播放列表中显示和触发的音频,可以根据需要对它们进行切片和排列.但音频剪辑这个功能在FL Studio的基础版中是没有的. 图1:音频剪辑 ...

  3. 详解在Word文档中常见的各种公式编辑问题

    正常情况下,我们在安装完成MathType之后会直接加载在Word文档中,Word文档中的MathType比较复杂,新手操作遇到麻烦也是常有的事,今天就来给大家详解下Word文档中常见的MathTyp ...

  4. FL studio系列教程(十一):FL Studio中如何混音

    要想得到"商业"品质的声音,我们就要学会混音.混音就是声音从乐器通道到路由到混音器.混音器中可以设置电平并添加各种效果,比如,添加混响.合唱以及延迟等等,这就是所谓的混音.那么FL ...

  5. 【VUE】6.组件通信(一)父组件向子组件传值

    1. 前提&知识点 1./components/Father.vue 是父组件, Son.vue 是子组件 2.父组件像子组件通信 props 2.组件通信 1. 新增一个路由入口 /fath ...

  6. ios开发中如何调用苹果自带地图导航

    前段时间一直在赶项目,在外包公司工作就是命苦,天天加班不说,工作都是和工期合同挂钩的,稍微逾期就有可能被扣奖金,不谈这些伤脑筋的事情了,让我们说说iOS开发中如何调用苹果手机自带的地图. 学习如逆水行 ...

  7. Linux 学习笔记02丨Linux 概述、常用快捷键、apt命令

    Chapter 1. Linux 概述 Linux 是一种自由和开放源码的 Unix 操作系统, 是一个基于 POSIX 和 UNIX 的多用户.多任务.支持多线程和多CPU的操作系统.只要遵循 GN ...

  8. 【mq读书笔记】消息队列负载与重新分配(分配 新队列pullRequest入队)

    回顾PullMessageService#run: 如果队列总没有PullRequest对象,线程将阻塞. 围绕PullRequest有2个问题: 1.PullRequest对象在什么时候创建并加入p ...

  9. 利用反射获取对象中的值等于x的字段

    Field[] field = behavior.getClass().getDeclaredFields(); for (int i = 0; i < field.length; i++) { ...

  10. day1(Django)

    1,web项目工作流程 1.1 了解web程序工作流程 1.2 django生命周期   2,django介绍 目的:了解Django框架的作用和特点作用: 简便.快速的开发数据库驱动的网站 Djan ...