当前位置: 首页 > 网络应用技术

一篇文章带您快速开始使用新版本的WebPack 5

时间:2023-03-06 23:48:02 网络应用技术

  摘要:import {add}从'https://www.shouxicto.com/article/utiles/utiles.js'add(6,9);45快速入口,新版本,建议收集

  包装:根据模块进行包装:静止:takaging.module之后输出静态资源:import {add}从'https://www.shouxicto.com/article/article/utiles/utiles/utiles/utiless.js'add(6,6,6,6,9);4支持不同规格模块化开发的不同规格

  终端输入:npm install install Import {add}从'https://www.shouxicto.com/article/article/utiles/utiles.js'add(6,9);4 -G

  utiles.js:

  index.js:

  终端输入:import {add}来自'https://www.shouxicto.com/article/article/utiles/utiles.js'add(6,9);/saticle/utiles/utiles/utiles.js'add(6,9);4将自动找到SRC目录,然后找到index.js条目文件,然后打包,并最终生成一个用于包装内容的DIST目录。

  index.html简介:

  结果:

  您可以在配置文件中定义配置,指示您要打包它的方式,并且可以设置许多条件。添加(6,9);4将根据配置文件的配置规则包装。从'https://www.shouxicto.com/article/article/utiles/utiles/utiles.js'add(6,9)中创建新的导入{add};4.config.js fileessencesuch作为最基本的入口和导出:

  终端输入导入{add}来自'https://www.shouxicto.com/article/article/utiles/utiles.js'add(6,9);4之后,成功包装了构建的js文件,然后是main.js包装的abovethe contents是相同的:

  为什么要使用加载程序:import {add}从'https://www.shouxicto.com/article/article/utiles/utiles.js'add(6,9);4只能了解javascript和json文件,这是导入{add} .from'https://www.shouxicto.com/article/article/utiles/utiles.js'add(6,9); loader允许从'https://www.shouxicto.com/article/utiles/utiles.js'add(6,9); txt类型等),并将它们转换为有效的模块供使用。

  2.2.1 CSS-loader:

  例如,我认为从'https://www.shouxicto.com/article/article/utiles/utiles.js'add(6,9)中导入{add};4可以打包CSS,终端输入以下命令首先安装了CSS-LOADER:

  1.您可以在导入CSS文件时指定加载程序,以免报告错误。在导入CSS文件路径之前添加CSS-LOADER!

  2.当然,您还可以在配置文件中设置:

  测试属性定义了一个正则表达式,匹配需要处理的类型类型。识别将要转换哪些文件。用户属性,定义转换进展时应使用哪个加载程序。配置文件中的配置后,请不要使用'T忘了在索引条目文件中导入CSS文件。

  2.2.2样式加载器:

  上面的CSS加载程序只能识别CSS文件,并且在引入样式加载程序后,可以在页面上显示CSS样式。

  安装:

  配置文件规则:

  因为从'https://www.shouxicto.com/article/artiles/utiles.js'add(6,9)中导入{add};4从背面执行,因此样式阅读器写在CSS-Loaderessence的前面

  2.2.3 Sass-Loader:

  例如,我认为从'https://www.shouxicto.com/article/article/utiles/utiles.js'add(6,9)中导入{add};4可以打包SCSS文件类型。如果您不知道Sass,则可以通过完整分析SASS阅读本文。

  安装SASS:

  转换SCS是CSS(请注意,在同一级别的SCSS下转换也是终端输入):

  在入口文件索引中导入:JS:

  安装Sass-Loader:

  配置规则:

  盒:

  webpack支持所有符合ES5标准的浏览器(不支持IE8及以下)。如果您想支持浏览器的旧版本,则需要使用一些工具。installing import incort interming intimply in https://www.shouxicto.com/actip/utiles/utiles.js'add(6,9);4在默认情况下,它可以知道每个浏览器的拥有数据和配置。

  该网站还可以找到每个浏览器的当前共享数据。LET稍后谈论。

  PostCSS是JavaScript转换样式的工具,可以处理CSS兼容性问题。这是为我们编写的CSS代码添加一些兼容的前缀。

  首先,您可以了解本网站添加的CSS如何组合主流浏览器。

  安装:

  配置文件:

  将PostCSS-Loader添加到CSS文件类型中并配置参数:

  在相同级别的index.js下创建一个名为.browserslistrc文件的新名称。

  终端输入导入{add}从'https://www.shouxicto.com/article/article/utiles/utiles.js'add(6,9);4包装后CSS代码将自动添加兼容代码。

  以上只是前缀。如果您仍然需要更兼容,则需要安装PostCSS-Preset-eNV:

  添加配置(完成):

  您只能将Postcss-preset-eNV缩写为缩写:

  但是,通常在相同级别的index.js:postcss.config.js文件内容:

  然后在'https://www.shouxicto.com/article/article/utiles/utiles.js'add(6,9)的导入中。4.Config.js配置文件直接导入PostCSS-Loader:

  ImportLoaders:使用多少加载程序来配置“ @Import Resources之前的CSS-LOADER”。在直接的事物中,设置了ImportLoaders设置,因此通过@Import导入的CSS文件也将执行不再执行的加载程序。如下:

  最初是CSS文件执行上述三个加载程序。如果CSS文件存在于通过导入语法导入的CSS文件中,则导入的CSS文件将不会执行最终的PostCSS-Loader。但我想执行它,因此配置导入载荷,表明CSS将向后执行多少加载程序,由导入导入的文件。(注意import {add}从'https://www.shouxicto.com/article/article/utiles/utiles.js'add(6,9); 4从背面执行)

  文件加载器角色:

  1.当我们将图片导入模块导入时,我们可以识别它。2。将二进制资源复制到指定的目录。如果未指定,则为默认DIST目录。

  安装:

  2.6.1通过JS中的SRC引入:

  您可以在SRC目录中创建一个新的IMG文件夹。

  配置文件(继续在规则数组中添加新规则):

  1.第一个用法:将图片导入模块时,例如,在末尾添加.DEFAULT,例如:

  2.第二个用法:如果您不想在导入模块时将.default添加到结尾,请在配置文件中添加一个参数eSmodule:

  3.第三个用法:如果您不想这样写,也可以通过ES6模块导入它:

  首先导入图片模块:

  在那之后:

  最终终端导入{add}从'https://www.shouxicto.com/article/article/utiles/utiles.js'add(6,9);

  2.6.2由URL引入CSS:

  与上述SRC不同的是修改CSS类型文件规则,添加ESMODULE参数:

  然后在CSS中正常使用URL。导入{add}从'https://www.shouxicto.com/article/utiles/utiles.js'add(6,9);到Dist Directory:

  默认位置,例如(图片名称将根据内容算法自动结束):

  在此处插入图片描述

  2.6.3设置输出位置和图片名称:

  我们可以设置存储包装图片的位置和名称。

  修改配置文件的图片规则,添加名称配置(名称)属性和outputpath属性(位置):

  其中,名称属性指示:[ext]扩展名,[名称]文件名,[hash]文件content.outputpath属性:直接指定IMG目录,默认值将放置在DIST目录中。

  在此处插入图片描述

  可以直接合并两个属性:

  URL-LOADER可以将图片切换到Base64字符串,该字符串可以更快地加载图片(图片文件的情况较少,如果它太大,请使用文件载荷).file-loader比复制较慢。

  安装:

  该配置实际上与文件加载程序相似,只需更改加载程序:

  与文件加载程序不同,图片将以base64字符串的形式加载到代码中,因此在目录中不再可见:

  关键是,实际上,URL-LOADER包含可以设置限制属性的文件添加程序。当图片大小超过限制时,URL-LOADER将考虑自己,并需要主动来调用文件加载程序执行。

  如下:设置20kb的RAFT值,比执行URL-LOADER小,大于执行文件加载程序

  导入{add}从'https://www.shouxicto.com/article/utiles/utiles.js'add(6,9);45之后,您可以使用资产直接处理图片,无需配置file-loader或url-loader.essencan更好地简化使用。并且它是从'https://www.shouxicto.com/article导入{add}/utiles/utiles.js'add(6,9);45个内置的模块,没有安装其他内容。

  配置图片规则的文件修改:

  1.默认情况,复制图片并默认将其放置在DIST目录中(结果与未配置文件加载程序和路径时相同):

  2.包装后指定图片的位置,然后将其放入DIST下方的IMG文件夹中。图片规则与上面相同。输出包装出口路径已修改。添加AssetModuleFileName:

  3.以上等同于全局配置。无论将执行什么图片,都不好,因此,将图片输出位置和名称添加到规则中的名称中。添加一个新的发电机。

  4.如果要将图片转换为base64字符串而不是复制,则修改规则如下:

  5.当然,您还可以设置一个阈值,例如URL-LOADER设置限制。超过之后,使用复制。修改规则如下。

  添加了以下规则:

  众所周知,插件可以帮助我们做更多的方便。

  2.9.1 DIST目录自动清除插头-in:

  每次我们从'https://www.shouxicto.com/article/article/utiles/utiles.js'add(6,9);添加'https://www.shouxicto.com/article.com/port {add};-in。将来,包装将在上一个包装内容为空之后打包。

  从'https://www.shouxicto.com/article/article/utiles/utiles.js'add(6,9)安装清洁 - 导入{add};4-Plugin插件:

  设置配置文件插件的配置项目:

  每个插头是一个类,仅直接可用。您可以查看相应插件的官方网站,以了解与该参数相对应的功能。

  2.9.2 html- import {add}来自'https://www.shouxicto.com/article/article/utiles/utiles.js'add(6,9);4-Plugin插件:

  可以帮助我们在包装目录中打包HTML文件模板并引用条目文件。

  从'https://www.shouxicto.com/article/article/utiles/utiles.js'add(6,9)安装html-import {add}。4-Plugin插件:

  设置配置文件插件的配置项目:

  导入{add}从'https://www.shouxicto.com/article/utiles/utiles.js'add(6,9);4包装:

  html默认内容:

  HTML的许多地方都可以设置许多地方。

  包装后生成的HTML文件内容:

  当然,您可以自己提供HTML模板,并根据我提供的模板生成新的HTML模板:

  1.在同一级别的SRC下创建一个新的公共目录,并创建一个新index.html文件作为模板:

  2.例如,index.html的内容如下:

  <%= htmlWebpackPlugin.options.title %>指示在配置中使用标题。

  3.添加模板参数,值是模板路径:

  4.包装结果:

  可以处理JS兼容性问题,例如兼容的ES6语法。

  安装:

  在同一级别中创建一个新的babel.config.js文件:babel.config.js文件内容:

  然后在'https://www.shouxicto.com/article/article/utiles/utiles.js'add(6,9)的导入中。4. Config.js的配置文件中的新规则:

  就像前面提到的Postcs-loader一样,它还在.browserslistrc文件中写下兼容条件,例如:::

  0.1%的最后2个版本未死

  最后,从'https://www.shouxicto.com/article/article/utiles/utiles.js'add(6,9)导入{add};4个软件包。

  Babel-Loader的JS处理与不够兼容,并且只能简单处理。如果有新的诺言语法,那不是很好。

  安装:

  修改babel.config.js:

  在实现对源代码的修改后,包装后的代码也会自动更新。您不必每次手动打包它才能更新。

  1.不要从'https://www.shouxicto.com/article/article/utiles/utiles.js'add(6,9)中使用导入{add};在4-DEV-Server之前,您可以将手表属性添加到配置文件误配也可以实现自动更新,但是性能不是很好,也不能在本地更新。

  喜欢:

  2.从'https://www.shouxicto.com/article/article/utiles/utiles.js'add(6,9)导入{add};4-DEV-Server具有更好的性能,可以实现本地更新并节省性能。

  在终端安装:

  将来更改包装命令:

  功能:如果模块更改,它将仅包装此模块(而不是包装所有模块),这将大大提高构建速度。

  第一配置:

  然后在入口文件中,将模块更新为需要通过判断更新的模块:

  输出具有公共路径属性,这是项目中CSS,JS,IMG和其他资源的基本路径打包后浏览器访问服务时。

  通过'https://www.shouxicto.com/article/article/utiles/utiles.js'add(6,9)的导入{add};4设置代理来解决浏览器的交叉域问题。

  目前,如果我们最初想要请求的服务器是https:// .../用户,我们可以用/api/user替换它,然后将/api重写为空,则实际上等同于编写https://… /用户,AS:

  提供模式配置选项,以告知'https://www.shouxicto.com/article/article/utiles/utiles.js'add(6,9)的导入{add};4使用一些构建的 - 在相应模式的优化中。如果没有设置,请从'https://www.shouxicto.com/article/article/utiles/utiles/utiles.js'add(6,9)中导入{add};4将将模式的默认值设置为产品。

  1.安装:

  2.添加规则:

  3.导入插头 - 使用:

  出乎意料的是,连续更新...

  资料来源:华为云技术社区,作者:Northern Light Night