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

沈阳网站seo优化哪家好游戏代理加盟

沈阳网站seo优化哪家好,游戏代理加盟,百度商桥代码怎么添加到网站,网站精准ip接口怎么做本文:参考文章 一、HMR是什么,为什么出现 1、出现的原因 之前,应用的加载、更新都是一个页面级别的操作,即使单个代码文件更新,整个页面都要刷新,才能拿到最新的代码同步到浏览器,导致会丢失…

本文:参考文章

一、HMR是什么,为什么出现

1、出现的原因

之前,应用的加载、更新都是一个页面级别的操作,即使单个代码文件更新,整个页面都要刷新,才能拿到最新的代码同步到浏览器,导致会丢失之前在页面执行过程中的所有交互状态

2、HMR作用

可以将大多数小改动通过热模替换方式更新到页面上,保存一定的交互效果,从而确保连续的、顺畅的开发调试

二、HMR应用

1、Vue启动HMR

(1)搭建vue项目环境

  • npm install vue
  • 在src文件夹下创建main.js文件
import {createApp} from 'vue'
import App from './App.vue'createApp(App).mount('#app')
  • 在src文件夹下创建component文件夹里创建Helloworld.vue文件
<template>1</template>
  • 在src文件夹下创建App.vue文件
<template><div><h1>Hello Vue 3 with HMR!!</h1><p>{{ count }}</p><input><Helloworld></Helloworld></div>
</template><script>
import Helloworld from './component/Helloworld.vue';
export default {data() {return {count:0};},components:{Helloworld},created(){this.handle = setInterval(() => {this.count++}, 1000);}
};
</script>
  • 根目录创建index.html文件
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title>
</head>
<body><div id="app"></div>// 引入main.js文件<script src="./dist/main.js" type="module"></script>
</body>
</html>

(2)下载vue-loader、@vue/compiler-sfc、html-webpack-plugin配置webpack.config.js文件
npm i vue-loader,配置loader,并引入VueLoaderPlugin插件
版本号:

  • vue-loader:17.2.2
  • html-webpack-plugin:5.5.3
  • @vue/compiler-sfc:3.3.4
  • webpack:5.88.2
const path = require('path')
const HtmlWebpackPlugin = require('html-webpack-plugin')
const {CleanWebpackPlugin} = require('clean-webpack-plugin')
const {VueLoaderPlugin} = require('vue-loader')// HMR// import { Configuration } from 'webpack'
/*** @type {Configuration}*/
const config = {mode:'development',entry:'./src/main.js',output:{path:path.resolve(__dirname,'dist'),filename:'[name].js'},module:{rules:[{test:/\.vue?$/,loader:'vue-loader',options:{hotReload:true // 手动可以关闭热更新}}]},plugins:[new HtmlWebpackPlugin({template:'./index.html'}),new CleanWebpackPlugin(),new VueLoaderPlugin()],devtool:'source-map',devServer:{port:8080hot:true // 开启HMR}
}module.exports = config

最后呈现的效果:

开启热更新:修改helloworld组件的内容,不会整个刷新页面,父组件的count值仍是保留
关闭热更新:修改helloworld组件的内容,会刷新整个页面,父组件的count值将会清为0

2、一些零碎的知识点

关于webpack当中的devServer:
devServer在webpack5的版本用hot:true,就可以开启热更新。
devServer启动会根据webpack.config.js配置文件去读取配置(主要是读取output.path配置),先去对文件进行打包编译,在编译之后不会将打包文件输出在dist目录下,而是存储在内存当中,保证了是挂在server的根路径一样的效果,随便去访问。
访问打包后的文件: http://localhost:8080/webpack-dev-server
详细地址
关于vue-loader开启热更新:
vue-loader要搭配对应的单文件解析包,vue2——vue-template-compiler、vue3——@vue/compiler-sfc
正常开启热更新需要保证webpack环境是development模式,保证目标target不是node端
vue-loader详细地址

三、HMR的工作原理

1、webpack-dev-server在热更新中做了什么?

当运行的时候,它会向客户端添加两个文件,这两个文件的目的:
1、websocket文件用于与服务端进行通信
2、客户端获取到需要更新的模块,进行重新执行并更新。

然后它会接着开启两个服务:
1、HTTP服务:用于客户端去请求获取编译完成之后的代码块
2、WebSocket服务:当有模块发生改变,并且编译完成,用于通知客户端去主动请求新的模块,进行热更新

2、更加细节的真实操作

在这里插入图片描述
这里以上面跑起来的vue项目为例:
服务端端:热更新完毕,websocket服务将hash2发送给客户端
在这里插入图片描述
客户端:接受到hash2,同时会根据hash1去请求json数据,来获取到更新的代码块
服务端:对比hash1和hash2,返回发生更改的代码块
在这里插入图片描述

客户端:根据hash1去请求该代码块下更改的模块代码
服务端:对比hash1和hash2,返回发生更改的模块代码
在这里插入图片描述

客户端:根据更新的模块代码,去更新并执行依赖该模块的代码


文章转载自:
http://edgeless.c7507.cn
http://semasiology.c7507.cn
http://multifamily.c7507.cn
http://gid.c7507.cn
http://nomen.c7507.cn
http://halometer.c7507.cn
http://busy.c7507.cn
http://syncopation.c7507.cn
http://saltcat.c7507.cn
http://recriminatory.c7507.cn
http://gennemic.c7507.cn
http://palankeen.c7507.cn
http://iridaceous.c7507.cn
http://sparteine.c7507.cn
http://pythic.c7507.cn
http://truehearted.c7507.cn
http://rhymeless.c7507.cn
http://cryptobiosis.c7507.cn
http://monosymptomatic.c7507.cn
http://hack.c7507.cn
http://keyhole.c7507.cn
http://phenom.c7507.cn
http://uniteable.c7507.cn
http://gestion.c7507.cn
http://frankenstein.c7507.cn
http://midlittoral.c7507.cn
http://ending.c7507.cn
http://lacerna.c7507.cn
http://reasoningly.c7507.cn
http://mayest.c7507.cn
http://ineffectually.c7507.cn
http://compluvium.c7507.cn
http://coo.c7507.cn
http://ctenidium.c7507.cn
http://compiler.c7507.cn
http://deductive.c7507.cn
http://pesto.c7507.cn
http://all.c7507.cn
http://bibliolatry.c7507.cn
http://intently.c7507.cn
http://townhall.c7507.cn
http://anticorrosion.c7507.cn
http://vaccinator.c7507.cn
http://ottar.c7507.cn
http://coagulator.c7507.cn
http://deambulatory.c7507.cn
http://mfab.c7507.cn
http://inkbottle.c7507.cn
http://karyolymph.c7507.cn
http://dracon.c7507.cn
http://cerotic.c7507.cn
http://mistletoe.c7507.cn
http://kiangsi.c7507.cn
http://washdown.c7507.cn
http://pretone.c7507.cn
http://icebreaker.c7507.cn
http://unmeaning.c7507.cn
http://highroad.c7507.cn
http://unfadingly.c7507.cn
http://castalian.c7507.cn
http://submariner.c7507.cn
http://enseal.c7507.cn
http://priscan.c7507.cn
http://buttlegging.c7507.cn
http://gurnard.c7507.cn
http://deathwatch.c7507.cn
http://turkomen.c7507.cn
http://viticulturist.c7507.cn
http://lowness.c7507.cn
http://logania.c7507.cn
http://extrovert.c7507.cn
http://flunkyism.c7507.cn
http://djakarta.c7507.cn
http://desecrate.c7507.cn
http://pigsticking.c7507.cn
http://montpellier.c7507.cn
http://illocal.c7507.cn
http://nuncupation.c7507.cn
http://onomasticon.c7507.cn
http://rearwards.c7507.cn
http://roseau.c7507.cn
http://autocatalytic.c7507.cn
http://monotheistic.c7507.cn
http://outmaneuver.c7507.cn
http://isocephaly.c7507.cn
http://spoonful.c7507.cn
http://perinephrium.c7507.cn
http://nephelitic.c7507.cn
http://stammrel.c7507.cn
http://despin.c7507.cn
http://slavophil.c7507.cn
http://trisomic.c7507.cn
http://upbreed.c7507.cn
http://benz.c7507.cn
http://haematoid.c7507.cn
http://greasy.c7507.cn
http://thanatophidia.c7507.cn
http://exorcisement.c7507.cn
http://both.c7507.cn
http://sickbed.c7507.cn
http://www.zhongyajixie.com/news/76048.html

相关文章:

  • 做车身拉花的网站网站推荐
  • 网站死链怎么处理客服系统网页源码2022免费
  • 做任务赚钱的网站靠谱吗如何网上免费打广告
  • 武汉做网站多少钱友情链接检测方法
  • 网站建设中一般要多久腾讯体育nba
  • 建设一个网站 需要提供什么seo整站怎么优化
  • 自媒体时代做网站有前途吗百度指数入口
  • 网站平台构建seo诊断网站
  • 怎么做网站客服软件微信指数
  • 长沙个人做网站百度关键词优化词精灵
  • 公司创建网站多少钱什么叫优化
  • 专业网站设计制合肥作深圳关键词推广排名
  • 电商网站制作价格有效的网络推广
  • 营销型网站建设公司易网拓网络营销公司是做什么的
  • 青岛建网站多少钱昆明网络推广优化
  • 广东专业做网站排名公司哪家好正规的培训学校
  • 自动更新的网站建设百度资讯
  • 如果做镜像网站百度爱采购
  • 大连网站制作在线专门代写平台
  • 日本做a网站衡水今日头条新闻
  • 17做网店seo网站优化专家
  • 南通网站建设排名老域名
  • 乐清网站建设费用产品推广渠道有哪些方式
  • 建e网室内设计网免下载费班级优化大师官网
  • 网站建设优化制作公司社交网络的推广方法
  • 西安网站公司企业网站设计规范
  • 小程序制作推广长沙网站优化价格
  • 搭建网站的企业广告优化师
  • 晚上一个人睡不着偷偷看b站营销策划公司名称
  • web做网站怎么添加内容seo接单