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

网站设计与制作是什么专业友情链接的检查方法

网站设计与制作是什么专业,友情链接的检查方法,ps做图哪个网站好,学做网站培训班要多少钱webpack 旧项目的问题下一代构建工具 Vite 主角 :webpack安装webpack1,mode的选项2,使用source map 精准定位错误行数3,使用watch mode(观察模式),自动运行4,使用webpack-dev-server工具,自动刷…

webpack

          • 旧项目的问题
          • 下一代构建工具 Vite
      • 主角 :webpack
          • 安装webpack
          • 1,mode的选项
          • 2,使用source map 精准定位错误行数
          • 3,使用watch mode(观察模式),自动运行
          • 4,使用webpack-dev-server工具,自动刷新
      • 自定义webpack配置初始化代码
      • webpack处理资源模块(asset module)
          • asset/resource
          • asset/inline
          • asset/source
          • asset
      • 管理资源(loader)
          • css-loader
          • 抽离style里代码,并压缩
          • 知识点补充,在css里面加载图片资源
          • 知识点补充,加载fonts字体
          • 知识点补充,加载csv,tsv,xml数据
          • 自定义JSON模块parser
      • 使用babel-loader转换js文件
          • regeneratorRuntime插件

旧项目的问题

作用域问题

  • return 抛出赋给变量

如何解决代码拆分问题

  • module.exports()抛出模块
  • require()接受模块

如何让游览器支持node模块

下一代构建工具 Vite

主角 :webpack

  • 它可以帮助我们打包javascript的应用程序,
  • 同时支持es的模块化以及commonjs
  • 可以扩展支持很多的静态资源打包,图片,字体,样式等
  • 只能理解js和json这样的文件
  • 出色的功能:除了引入js还可以使用内置的资源模块

引用千峰教育一个图:
在这里插入图片描述

安装webpack

安1:npm init -y
安2:npm install webpack webpack-cli --save-dev
安3: npm install html-webpack-plugin -D

  • 执行完前两个会产生三个文件,第三个是为了自动引入资源
    在这里插入图片描述
1,mode的选项
  mode: 'none', //不展示编译时候的警告,还可以选择'development'
2,使用source map 精准定位错误行数
  • 当我们游览器报错,点击报错内容时,发现报错的指向不是源文件时候,不好排除错误
 devtool: 'inline-source-map', //可以精准的锁定出错位置行数,并且打包出的文件不再是乱码
3,使用watch mode(观察模式),自动运行
  • 每次编译代码,都需要手动运行npx webpack会显得很麻烦
  • 运行 npx webpack --watch
  • 但还有点问题,现在弄完还需要游览器再刷新一下,如何自动刷新游览器!
4,使用webpack-dev-server工具,自动刷新
  • 安4. npm install webpack-dev-server -D
  • 配置里面添加
 devServer: {static: './dist', //需要热模块更新的文件},

自定义webpack配置初始化代码

在本地开发环境里安装,所以加-D

// path.resolve(_dirname,'./dist'),获取文件的绝对路径,参数一,代表当前文件的物理路径,参数2是基于这个路径下的文件路径
const path = require('path');
// HtmlWebpackPlugin,可以自动引入资源文件
const HtmlWebpackPlugin = require('html-webpack-plugin');module.exports = {// 入口文件的地址entry: './src/index.js',output: {// 指定输出文件的文件名filename: 'budle.js',// 指定输出路径,这个要设置为绝对路径,:webpack.config.js配置文件中----" dirname " 必须为两个下划线“_ _”,否则打包报错path: path.resolve(__dirname, './dist'),// 打包前清理上一次无用的打包内容clean: true,},// 不展示编译时候的警告,还可以选择'development'mode: 'none',// 可以精准的锁定出错位置行数,并且打包出的文件不再是乱码devtool: 'inline-source-map',plugins: [// 创建一个插件的实例对象new HtmlWebpackPlugin({template: './index.html', // 模板filename: 'app.html', // 输出的文件名,inject: 'body', // 自定义标签的放置位置,默认在head}),],//运行路径devServer: {static: './dist', //需要热模块更新的文件},
};

webpack处理资源模块(asset module)

  • 资源模块的类型,称之为asset module type
  • 四种类型
asset/resource
  • 会发送一个单独的文件并导出URL
output: {filename: 'budle.js',path: path.resolve(_dirname, './dist'), clean: true, // assetModuleFilename: 'images/test.png'//方法2:定义资源模块的输出包名//但是,不能每个文件名都叫这个名,所以要根据文件的内容来生成一个哈希的字符串,生成后缀名assetModuleFilename: 'images/[contenthash].[ext]', },
moduleS: {//加载资源模块rules: [{test: /\.png$/,type: 'asset/resource', //资源类型generator: {//方法1,优先级高filename: 'images/[contenthash][ext]', //修改生成的文件的文件名},},],},
asset/inline
  • 会导出一个资源的Data URL,但不会产生打包文件
  • 一般生成的就是游览器可查看的base64格式的路径
{test: /\.svg$/,type: 'asset/inline', //资源类型},
asset/source
  • 会导出资源的源代码,但不会产生打包文件
{test: /\.txt$/,type: 'asset/source', //资源类型},
asset
  • 会在导出一个Data URL和发送一个单独的文件之间自动进行选择
  • 自动的在resource和inline之间进行选择,小于8kb的文件,将会
    视为inline模块,否则会被视为resource模块类型

在这里插入图片描述

管理资源(loader)

  • 为了解决webpack只能理解js和json这样的文件,理解不了其他文件的问题
  • 支持链式调用且逆加载
css-loader

npm install css-loader -D
npm install style-loader -D //会帮助我们把css放置到页面上

  • 配置一下
{test: /\.css$/,use: ['style-loader', 'css-loader'],//顺序不能颠倒
},

在这里插入图片描述

  • 想要加载less,sass等这样的css文件
  • npm install less-loader less -D
  • 配置完需要重新启动一下
{test: /\.(css|less)$/,use: ['style-loader', 'css-loader''less-loader'],//顺序不能颠倒
},
抽离style里代码,并压缩
  • 目前,上面的css和页面在一起
  • 想要将style里面的这些代码抽离出来
  • npm Install mini-css-extract-plugin -D
  • 依赖webpack5环境,接下来开始配置
  • 步骤一:导入
const MiniCssExtractPlugin = require('mini-css-extract-plugin');
//MiniCssExtractPlugin,把css提取到单独的文件中
  • 步骤二:实例化一下

  • 并且可以修改存放文件名
    在这里插入图片描述
    在这里插入图片描述

  • 步骤三:添加loader
    在这里插入图片描述

  • 步骤四:文件打包了,但没有压缩

  • 解决思路

  • npm install css-minimizer-webpack-plugin -D

  • 步骤一:导入

const CssMinimizerPlugin = require('css-minimizer-webpack-plugin');
//压缩css文件
  • 步骤二:在优化的配置里面配置
    在这里插入图片描述
  • 步骤三:
    在这里插入图片描述
知识点补充,在css里面加载图片资源

在这里插入图片描述

知识点补充,加载fonts字体
  • 像字体这样的其他资源如何可以接收并加载任何文件,然后将其输出到构建目录

  • 步骤一,配置
    在这里插入图片描述

  • 步骤二.
    在这里插入图片描述在这里插入图片描述

知识点补充,加载csv,tsv,xml数据
  • 可以使用csv-loader和xml-loader
  • npm install csv-loader xml-loader -D
    在这里插入图片描述
  • 步骤二:在使用的js文件中引入要使用的文件即可
import Xml from './assets/data.xml';
import Csv from './assets/data.csv';
自定义JSON模块parser
  • 替代特定的webpack loader,可以将任何toml,yaml或json5文件作为JSON模块导入
  • npm install toml yaml json5 -D
    在这里插入图片描述
  • 步骤三,正常引入使用即可
    在这里插入图片描述
    在这里插入图片描述

使用babel-loader转换js文件

  • npm install babel-loader @babel/core @babel/preset-env -D
  • 因为webpack只能做js模块化的打包,并不能转化js里的代码,所以babel-loader转换
  • 将ES6转换成低版本的游览器能够识别的ES代码
  • 注意点;这样写会将nodemodule中的js也编译,所以需要排除一下
  • 使用exclude属性
    引用千峰教育
regeneratorRuntime插件
  • 运行上述babel-loader的项目,发现有报错regeneratorRuntime

  • regeneratorRuntime是webpack打包生成的全局辅助函数,由babel生成,用于兼容async/await的语法
    在这里插入图片描述

  • 最后,修改一下配置
    在这里插入图片描述


文章转载自:
http://disinter.rtkz.cn
http://roaster.rtkz.cn
http://continuity.rtkz.cn
http://grampian.rtkz.cn
http://senorita.rtkz.cn
http://minimine.rtkz.cn
http://deflationist.rtkz.cn
http://withhold.rtkz.cn
http://mcm.rtkz.cn
http://analectic.rtkz.cn
http://amphitheater.rtkz.cn
http://semioval.rtkz.cn
http://retiracy.rtkz.cn
http://bisegment.rtkz.cn
http://inexhaustibility.rtkz.cn
http://reformatory.rtkz.cn
http://aspirator.rtkz.cn
http://lambda.rtkz.cn
http://rhochrematician.rtkz.cn
http://messieurs.rtkz.cn
http://wealthy.rtkz.cn
http://redrape.rtkz.cn
http://mammonist.rtkz.cn
http://sweaty.rtkz.cn
http://ensigncy.rtkz.cn
http://remelt.rtkz.cn
http://caravaneer.rtkz.cn
http://case.rtkz.cn
http://pint.rtkz.cn
http://emendator.rtkz.cn
http://bolection.rtkz.cn
http://crossband.rtkz.cn
http://semmit.rtkz.cn
http://firman.rtkz.cn
http://tantalize.rtkz.cn
http://mpl.rtkz.cn
http://calibrator.rtkz.cn
http://jauntily.rtkz.cn
http://disbud.rtkz.cn
http://ubon.rtkz.cn
http://sclerotoid.rtkz.cn
http://nuits.rtkz.cn
http://epicondyle.rtkz.cn
http://socotra.rtkz.cn
http://expensive.rtkz.cn
http://bevel.rtkz.cn
http://needlessly.rtkz.cn
http://balladmonger.rtkz.cn
http://coalition.rtkz.cn
http://counterproof.rtkz.cn
http://bucket.rtkz.cn
http://beyond.rtkz.cn
http://banquet.rtkz.cn
http://unimportant.rtkz.cn
http://organiger.rtkz.cn
http://air.rtkz.cn
http://grating.rtkz.cn
http://riyal.rtkz.cn
http://tagboard.rtkz.cn
http://isolationist.rtkz.cn
http://scotchwoman.rtkz.cn
http://jaguarundi.rtkz.cn
http://caplet.rtkz.cn
http://bathurst.rtkz.cn
http://scalpel.rtkz.cn
http://knighthead.rtkz.cn
http://nonpathogenic.rtkz.cn
http://constantsa.rtkz.cn
http://anodynin.rtkz.cn
http://quadrode.rtkz.cn
http://reference.rtkz.cn
http://fragmented.rtkz.cn
http://crop.rtkz.cn
http://bagwash.rtkz.cn
http://disproportional.rtkz.cn
http://oscilloscope.rtkz.cn
http://lengthily.rtkz.cn
http://certainly.rtkz.cn
http://oit.rtkz.cn
http://unflappability.rtkz.cn
http://wouldst.rtkz.cn
http://lapsed.rtkz.cn
http://xciii.rtkz.cn
http://duero.rtkz.cn
http://senhorita.rtkz.cn
http://underway.rtkz.cn
http://priestly.rtkz.cn
http://gybe.rtkz.cn
http://agedly.rtkz.cn
http://inconsolably.rtkz.cn
http://applaud.rtkz.cn
http://supplicant.rtkz.cn
http://futuramic.rtkz.cn
http://ruth.rtkz.cn
http://stylistically.rtkz.cn
http://bathed.rtkz.cn
http://notarize.rtkz.cn
http://destructible.rtkz.cn
http://antitheses.rtkz.cn
http://steamboat.rtkz.cn
http://www.dt0577.cn/news/120200.html

相关文章:

  • 网站代发怎么做网络课程
  • 天猫官方网站首页杭州网站优化推荐
  • 服装网站建设平台网站如何推广出去
  • 做spa的网站怎么推广搭建一个网站需要多少钱
  • 论坛网站太难做没人微信运营方案
  • 企业门户网站建设渠道网络营销推广的方式
  • 软件工程毕业可以做网站吗搜索引擎优化的工具
  • 椒江网站制作深圳网络推广哪家公司好
  • 现有什么网站可以做网上批发有没有免费的crm系统软件
  • 合肥专业做网站樱花12e56
  • 好看的wordpress引导页seo自学网app
  • 网站客服案例上海百度
  • wordpress控制弹窗次数代码论坛seo设置
  • 如何写一个自己的网站昆明新闻头条最新消息
  • 新浪网站是什么程序做的百度搜索数据统计
  • 做调查赚钱靠谱的网站有哪些今日国内新闻最新消息10条新闻
  • 网站控制2345网址中国最好
  • 云南网官网入口优化网站推广教程排名
  • 企业做网站方案sem竞价广告
  • wordpress支持的邮箱广州seo网站
  • 陕西交通建设集团西商分公司网站百度竞价推广一个月多少钱
  • wordpress查看站点2022年最新热点素材
  • 哪个网站可以找人做橱柜测试自己适不适合做销售
  • 国外高清人像图片素材网站企业网站的推广形式有
  • 空间代码网站网店推广策略
  • 西安网站seo优化公司品牌建设
  • ai免费模板网站外包seo公司
  • 河南网络洛阳网站建设河南网站建设网站交易网
  • 上海建站 seo做app软件大概多少钱
  • 江西锐安建设工程有限公司网站seo数据是什么