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

网站的专业公司营销型网站开发

网站的专业,公司营销型网站开发,网站备案文件下载,wordpress hacker主题先阅读 【Vue 2 组件基础】中的初步了解动态组件。 动态组件与keep-alive 我们知道动态组件使用is属性和component标签结合来切换不同组件。 下面给出一个示例&#xff1a; <!DOCTYPE html> <html><head><title>Vue 动态组件</title><scri…

先阅读 【Vue 2 组件基础】中的初步了解动态组件。


动态组件与keep-alive

我们知道动态组件使用is属性和component标签结合来切换不同组件。

下面给出一个示例:

<!DOCTYPE html>
<html><head><title>Vue 动态组件</title><script src="https://cdn.jsdelivr.net/npm/vue@2.6.14/dist/vue.js"></script>
</head><body><div id="app"><!--  tab 标签页 --><div><button @click="tab = 'home'">首页</button><button @click="tab = 'posts'">文章</button></div>父组件count: {{count}}<!--  动态组件 --><component :is="tab" @increment="count=$event"></component></div><script>//  注册组件Vue.component('home', {data: function () {return {count: 0}},template: `<div><div>首页内容</div><div>子组件count: {{count}}</div><button @click="count++;$emit('increment', count)">点击了{{count}}次</button></div>`,});Vue.component('posts', {template: '<div>文章内容</div>'});var vm = new Vue({el: '#app',data: {tab: 'home',count: 0},});</script>
</body></html>
<script>

在这里插入图片描述

看代码可以知道父组件的count会在子组件count更新后变为子组件的count值。但我们切换组件后再切换回来,会发现父组件count没变,子组件count变为初始值。这是因为,每次切换组件都会创建当前组件的新实例。

那怎么保存先前组件的状态呢?

Vue提供了keep-alive组件。我们使用该元素将要缓存的组件包裹起来。让我们看看效果:

<keep-alive><component :is="tab" @increment="count=$event"></component>
</keep-alive>

在这里插入图片描述

成功解决问题!

了解更多keep-alive组件的细节。


异步组件

异步组件是一种加载组件的方式,它允许我们将组件的加载推迟到需要时再进行,以提高应用程序的性能和加载速度。

我们可以通过不同的方式使用异步组件。

1.工厂函数

使用Vue.component方法来定义一个异步组件工厂函数:

Vue.component('async-component',function(resolve,reject){//模拟异步加载,延迟一段时间后解析组件setTimeout(function(){resolve({template:'<div><h2>Async Component Content</h2></div>'})},1000)
})

使用Vue.component方法结合webpack的code-splitting来定义一个异步组件工厂函数:

Vue.component('async-component',function(resolve,reject){//这个特殊的require语法会告诉webpack自动将编译后的异步组件拆分成不同的块require('./AsyncComponent.vue',resolve)
})

在上面代码中,async-component是你定义异步组件的名字,后面的工厂函数有两个参数:resolverejectresolve是一个函数,异步加载成功时会调用它。reject则是在异步加载失败时调用。

2.Vue.component+动态导入+webpack 2的代码分割+ES2015的模块语法

Vue.component(`async-webpack-example`,()=>import('./my-async-component')
);

()=>import('./my-async-component')返回一个Promise,Vue会根据Promise的状态来自动处理异步加载和渲染的过程

3.局部注册+动态导入

new Vue({components:{'my-component':()=>import('./my-async-component')}
})

处理加载状态

异步组件工厂函数可以返回一个对象,该对象包含有关异步组件加载、加载中、加载失败等情况的配置信息,这种方式允许你更加精细地控制异步组件地加载和渲染过程。下面是这种格式的异步组件配置对象的详细解释:

const AsyncComponent=()=({//需要加载的组件component:import('./MyComponent.vue'),//异步加载时使用的组件loading:LoadingComponent,//加载失败时使用的组件error:ErrorComponent,//展示加载时组件的延迟时间,默认值是200(毫秒)delay:200,// 如果提供了超时时间且组件加载也超时了,// 则使用加载失败时使用的组件。默认值是:`Infinity`,即没有超时限制timeout: 3000
})
http://www.yayakq.cn/news/988854/

相关文章:

  • 公司网站的seo优化wordpress 数据采集
  • 外贸网站有哪些平台天元建设集团有限公司欠款
  • 校园招聘网站策划书软件制作公司排名
  • 网站开发会议议程范文怎么学建网站
  • 怎么网站改版抖音小程序怎么关闭或注销
  • 网站建设投放广告宜春集团网站建设
  • 郑州建站费用域名注册管理中心网站
  • 网站建设与营销服务推广普通话征文
  • 郑州市公司网站开发设计好看英文网站
  • 做淘宝的货源网站请为hs公司的钻石礼品网站做网络营销沟通策划_预算是20万.
  • 怎么做网站可以注册的网络营销推广方案模板
  • 深圳html5网站开发淘宝不允许 网站建设
  • 公司网站界面设计wordpress 古典
  • 眉山招聘网站建设巩义网站建设联系电话
  • 深圳网络推广建站双流区规划建设局网站
  • 做图模板网站有哪些内容网站页面设计需求
  • 如何为网站建设内容网站制作价格权威乐云践新
  • 南京网站排名优化费用企石镇仿做网站
  • 深圳企易科技有限公司百度搜索怎么优化
  • 网站开发二维码生成网站开发范例文档
  • 网站seo快速优化技巧网站服务公司案例
  • 建网站 需要签署协议万网空间
  • 接工程网站郫都区网站建设
  • 大气的企业网站源码住房建设部网站
  • 遵义企业网站建设写作挣钱的网站
  • 深圳市住房和建设局官网站首页做网站建设公司网站设计
  • 自适应网站cms网络营销方案范文
  • 怎么在网站后面制作官网俩个字石排东莞网站建设
  • 微小店网站建设价格网页升级紧急通知每天正常更新
  • 山东省建设执业资格注册管理中心网站网站建设的主题