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

教学类网站怎么做网站建设分享

教学类网站怎么做,网站建设分享,有人看片吗免费观看,做金融网站文章目录前言一、为什么要学习Webpack?二、什么是Webpack?1. 产生背景2. 基础概念三、使用Webpack1. 安装2. 编辑配置文件3. 执行编译命令核心流程四、如何使用Webpack流程类配置配置总览五、理解Loader六、理解插件插件钩子课外关注资料前言 此文章仅用…

文章目录

  • 前言
  • 一、为什么要学习Webpack?
  • 二、什么是Webpack?
    • 1. 产生背景
    • 2. 基础概念
  • 三、使用Webpack
    • 1. 安装
    • 2. 编辑配置文件
    • 3. 执行编译命令
    • 核心流程
  • 四、如何使用Webpack
    • 流程类配置
    • 配置总览
  • 五、理解Loader
  • 六、理解插件
    • 插件钩子
  • 课外关注资料


前言

此文章仅用来记录学习。


一、为什么要学习Webpack?

  • 理解前端工程化概念、工具、目标
  • 一个团队总要有那么几个人熟悉Webpack,某种程度省可以成为个人的核心竞争力
  • 高阶前的段必经之路

二、什么是Webpack?

1. 产生背景

## 前端项目构成
在过去主要是通过手动管理这些资源,这会导致出现大量的问题:

  • 依赖手工,比如有50个JS文件…操作,过程繁琐
  • 当代码文件之间有依赖的时候,就得严格按依赖顺序书写
  • 开发与生产环境一致,难以接入TS或JS新特性
  • 比较难接入Less、Sass等工具
  • JS、图片、cSS资源管理模型不一致

由于上诉问题的出现,就衍生出了很多现代化工具:webpack,vite,rollup,gulp等等

2. 基础概念

概念:用于现代 JavaScript 应用程序的静态模块打包工具

  • 多份资源文件打包成一个 Bundle支持 Babel、Eslint、TS、CoffeScript、Less、Sass
  • 支持模块化处理 css、图片 等资源文件
  • 支持 HMR + 开发服务器
  • 支持持续监听、持续构建
  • 支持代码分离
  • 支持 Tree-shaking
  • 支持 Sourcemap

三、使用Webpack

1. 安装

npm i -D webpack webpack-cli

2. 编辑配置文件

module.exports = {optimization:{minimize: false // 关闭代码压缩,可选},entry: "./src/index.ts",output: {path: path.resolve(__dirname, "dist"),filename: "bundle.js",environment: {arrowFunction: false // 关闭webpack的箭头函数,可选}},module: {rules: [{test: /\.ts$/,use: {loader: "ts-loader" },exclude: /node_modules/}]}
}

3. 执行编译命令

npx webpack

核心流程

在这里插入图片描述

webpack本质上所作的事情

  • 多个文件资源合并成一个,减少 http 请求数
  • 支持模块化开发支持高级 JS 特性
  • 支持 Typescript、CoffeeScript 方言
  • 统一图片、CSS、字体 等其它资源的处理模型
  • Etc…

四、如何使用Webpack

关于 Webpack 的使用方法,基本都围绕“配置展开,而这些配置大致可划分为两类:

  • 流程类: 作用于流程中某个 or 若千个环节直接影响打包效果的配置项
  • 工具类:主流程之外,提供更多工程化能力的配置项

流程类配置

在这里插入图片描述

配置总览

在这里插入图片描述
webpack官方配置文档

五、理解Loader

在这里插入图片描述
步骤:

  • less-loader:实现 less => css 的转换
  • css-loader: 将 CSS 包装成类似 module.exports =“$[css”的内容,包装后的内容符合 JavaScript 语法
  • style-loader: 将 css 模块包进 require 语句,并在运行时调用 iniectStyle 等函数将内容注入到页面的 style 标签

在这里插入图片描述
特点:

  • 链式执行
  • 支持异步执行
  • 分normal、pitch两种模式

常见Loader:
在这里插入图片描述

六、理解插件

> 常用
由上可知,这是一个特别复杂的过程,那么这就牵扯到了一系列的问题:

  • 新人需要了解整个流程细节,上手成本高
  • 功能迭代成本高,牵一发动全身
  • 功能僵化,作为开源项目而言缺乏成长性…

心智成本高 => 可维护性低 => 生命力弱

插件架构精髓:对扩展开发,对修改封闭

插件钩子

钩子的核心信息:

  1. 时机: 编译过程的特定节点,Webpack 会以钩子形式通知插件此刻正在发生什么事情
  2. 上下文: 通过 tapable 提供的回调机制,以参数方式传递上下文信息
  3. 交互: 在上下文参数对象中附带了很多存在side effect 的交互接口,插件可以通过这些接口改变
    在这里插入图片描述

课外关注资料

webpack官方配置文档

CSS编译:
css-loader
style-loader

Babel:
babel-loader
babel官网
@babel/preset-env
@babel/preset-react
@babel/preset-typescript

Html
Html-webpack-plugin

HMR
HMR 原理全解析

Loader
如何编写loader

插件
Webpack 插件架构深度讲解
一文吃透 Webpack 核心原理

http://www.yayakq.cn/news/569771/

相关文章:

  • 新增网站备案时间WordPress如何迁移数据
  • 传奇手游盒子app平台排行榜哈尔滨百度网站快速优化
  • 360广告联盟怎么做网站wordpress 入门pdf
  • 网站数据库出问题给别人做违法网站
  • 淄博建设网站公司美食推广平台有哪些
  • 网站源码论坛如何建立个人网站
  • 东莞网站建设优化方案求个网站好人有好报2023
  • 网站制作的文章数学网站建设方法
  • 有什么可以做翻译的网站吗wordpress在文章中加背景
  • 视频点播网站开发教程如何在自己电脑上做网站服务器
  • 兰州学校网站建设传奇背景图网站怎么做
  • 好用的网站后台管理系统遵义直播遵义新闻官网
  • 做网店好还是网站西安网站建设专家
  • 网站开发流程三部分软件外包开发平台
  • 陕西建站成都线上推广平台
  • 网站怎么添加二级域名重庆建筑信息网查询
  • 协会网站建站宁波快速制作网站
  • 局网站建设申请烟台网站建设团队
  • ppt做视频的模板下载网站有哪些内容沧州网站制作多少钱
  • 网站接单做项目电脑编程用什么软件
  • alexa的网站排名主要分为哪两种多个网站 备案吗
  • 免费视频网站素材青岛市房产信息网官网
  • 深圳福田区网站建设职业生涯规划大赛演讲稿5分钟
  • 模具机械设备东莞网站建设皇岗网站建设
  • 杭州做网站的企业网站前端建设
  • 个人做门户网站中国建设银行网站首页u盾登入
  • 网站动画效果怎么做的如何安装wordpress ftp
  • 做网站襄樊贵阳银行手机银行下载官方网站
  • 罗湖附近公司做网站建设哪家效益快wordpress 主题破解
  • 网站建设中制作页面导航wordpress汉化