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

网店代运营公司是真的吗兰州正规seo整站优化

网店代运营公司是真的吗,兰州正规seo整站优化,wordpress评论去掉邮箱,电商门户网站访问元素和组件 通过Vue 2 组件基础一文的学习,我们知道组件之间可以通过传递props或事件来进行通信。 但在一些情况下,我们使用下面的方法将更有用。 1.访问根实例 根实例可通过this.$root获取。 我们在所有子组件中都可以像上面那样访问根实例&…

访问元素和组件

通过Vue 2 组件基础一文的学习,我们知道组件之间可以通过传递props事件来进行通信。

但在一些情况下,我们使用下面的方法将更有用。


1.访问根实例

根实例可通过this.$root获取。

我们在所有子组件中都可以像上面那样访问根实例,它就像一个vuex中的全局store

这样我们可以在根实例上定义方法和属性,这些方法和属性可以在所有组件中访问。

根实例也可以用作事件总线,你可以触发根实例上的自定义事件,在其他组件上监听这些事件以进行通信。一个示例如下:

<!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"><button @click="sendMessage">Send Message By Root</button><child-component></child-component></div><script>//  注册组件Vue.component('child-component', {data: function () {return {childMessage:'childMsg'}},template: `<div><p>Message in ChildComponent:{{childMessage}}</p></div>`,created(){//通过 this.$root 监听`message-sent`事件this.$root.$on('message-sent',message=>{this.childMessage=message})}});var vm = new Vue({el: '#app',data:{message:'rootMsg'},methods:{sendMessage(){//在根实例上触发自定义事件'message-sent'this.$emit('message-sent',this.message)}}});</script>
</body></html>
<script>

在这里插入图片描述


2.访问父组件实例、访问子组件实例或子元素

之前我们可以通过传递prop来达到 子组件访问父组件实例 或者称为 父组件向子组件传值 的目的。

现在我们可以使用$parent property来访问父级组件实例。

之前我们也通过触发自定义事件传递抛出值的方式来访问子组件实例。

同样的,我们可以通过ref attribute为子组件或子元素添加一个ID引用。

<child-component ref="child"></child-component>

于是可以使用this.$refs.child来访问子组件实例。

通过ref引用子组件示例:

<!DOCTYPE html>
<html><head><title>Vue ref 示例</title><script src="https://cdn.jsdelivr.net/npm/vue@2.6.14/dist/vue.js"></script>
</head><body><div id="app"><button @click="toggleColor">Toggle Color</button><p :style="{ color: textColor }">This text color can be toggled.</p><child-component ref="childRef"></child-component></div><script>// 子组件Vue.component('child-component', {template:`<div><p>This is a child component.</p></div>`,methods: {sayHello() {console.log('Hello from child component!');}}});var vm = new Vue({el: '#app',data: {textColor: 'black',isChildVisible: true},methods: {toggleColor() {this.textColor = this.textColor === 'black' ? 'red' : 'black';// 通过 ref 访问子组件实例中的方法this.$refs.childRef.sayHello();}}});</script>
</body></html>

在这里插入图片描述


3.依赖注入

不管是this.$parentthis.$refs,都可能会陷入深层嵌套的风险,我们可能会通过this.$parent.$parent.$parent来访问上层某个组件实例。这无疑是不合理的。

针对较深层级的组件访问,Vue设计了依赖注入的模式。它允许我们将一个依赖注入到某个组件里,以便组件可以访问这个依赖而不需要显示传递它。这对于共享全局配置或服务非常有用,例如国际化(i18n)配置、数据请求服务等。

具体的,我们通过在父组件provide选项提供依赖,然后在子组件的inject选项注入依赖。

示例:

//在父组件中
provide:{userSevice:new UserService()
}//在子组件中
inject:['userService'],
created(){this.userService.doSomething()
}

为什么我们不使用$root实现这种方案呢?我认为,依赖注入适合小范围的配置共享,而全局共享则适用于$root

程序化的事件监听器

$emit触发的事件可以被v-on监听,但这不是我们这章的内容。

本文主要介绍 Vue 2 中程序化的事件监听器,我们可以使用它来动态地添加和删除事件监听器。

Vue实例上有一系列方法来处理事件,包括$on$once$off。它们都包含两个参数:eventNameeventHandler$on侦听一个事件;$once只侦听一个事件一次;$off停止侦听一个事件。

$emit$on$off浏览器的EventTarget API dispatchEventaddEventListenerremoveEventListener并不等同。

$emit用于触发自定义事件,dispatchEvent用于触发各种DOM事件。addEventListenerremoveEventListener同理。

循环引用

1.递归组件

我们可以在组件模板内部调用自身,这称为递归组件。递归组件要注意设置递归终止条件,例如v-if的值为false。

假设我们有一个表示文件夹结构的数据对象:

<!DOCTYPE html>
<html><head><title>Vue 2 递归组件 Demo</title><script src="https://cdn.jsdelivr.net/npm/vue@2.6.14/dist/vue.js"></script>
</head><body><div id="app"><recursive-folder :folder="folder"></recursive-folder></div><script>Vue.component('recursive-folder', {props: ['folder'],template: `<div><span>{{ folder.name }}</span><div v-if="folder.children.length > 0"><ul><li v-for="childFolder in folder.children" :key="childFolder.name"><recursive-folder :folder="childFolder"></recursive-folder></li></ul></div></div>`});var vm = new Vue({el: '#app',name: 'recursive-folder',data: {folder: {name: 'Folder A',children: [{name: 'Subfolder A.1',children: [{name: 'File A.1.1',children: []},// 可能有更多子项]},{name: 'File A.2',children: []},// 可能有更多子项]}},});</script>
</body></html>

在这里插入图片描述


2.循环组件

循环组件是不同组件互相使用,递归组件是自身使用自身

使用Vue.component全局注册组件时,Vue帮助我们自动解决组件之间的依赖关系,因此你可以随意使用它们。

但是,当我们使用模块系统(如Webpack)时,便可能出现循环依赖的情况。

为了解决该问题,你可以在组件的beforeCreate生命周期钩子函数中动态注册依赖组件,或者使用异步组件加载来确保组件能够正确解析和注册。

1)在组件的beforeCreate生命周期钩子函数中动态注册依赖组件:

beforeCreate(){this.$options.components.AnotherComponent=require("./another-component.vue").default
}

2)使用异步组件加载:

参考Vue 2 动态组件和异步组件一文。


模板定义的替代品

1.内联模板


文章转载自:
http://dinncoexacting.knnc.cn
http://dinncosovnarkhoz.knnc.cn
http://dinncoinexplicably.knnc.cn
http://dinncozona.knnc.cn
http://dinncochlorocarbon.knnc.cn
http://dinncobiomedicine.knnc.cn
http://dinncoqueer.knnc.cn
http://dinncobaneberry.knnc.cn
http://dinncocoedition.knnc.cn
http://dinncosimba.knnc.cn
http://dinncomodacrylic.knnc.cn
http://dinncovireo.knnc.cn
http://dinncoplunging.knnc.cn
http://dinncoretailing.knnc.cn
http://dinncomengovirus.knnc.cn
http://dinncotabbinet.knnc.cn
http://dinncoacquiescently.knnc.cn
http://dinncotugboatman.knnc.cn
http://dinncosurnominal.knnc.cn
http://dinncofingerpost.knnc.cn
http://dinncomultifold.knnc.cn
http://dinncohemianopia.knnc.cn
http://dinncoaerographer.knnc.cn
http://dinncoelucidation.knnc.cn
http://dinncodirl.knnc.cn
http://dinncocineangiography.knnc.cn
http://dinncofootrope.knnc.cn
http://dinncorebuttable.knnc.cn
http://dinncoirrespectively.knnc.cn
http://dinncoscaloppine.knnc.cn
http://dinncodeadliness.knnc.cn
http://dinncoepibiosis.knnc.cn
http://dinncoweakliness.knnc.cn
http://dinncovapidly.knnc.cn
http://dinncopatripotestal.knnc.cn
http://dinncohierogrammat.knnc.cn
http://dinncostapedectomy.knnc.cn
http://dinncokaryokinesis.knnc.cn
http://dinncorequirement.knnc.cn
http://dinncobailsman.knnc.cn
http://dinncogi.knnc.cn
http://dinncohydrometric.knnc.cn
http://dinncosycamore.knnc.cn
http://dinncoherpetic.knnc.cn
http://dinncophonorecord.knnc.cn
http://dinncoidly.knnc.cn
http://dinncoinexactitude.knnc.cn
http://dinncocleanish.knnc.cn
http://dinncogisarme.knnc.cn
http://dinncobeautility.knnc.cn
http://dinncowhifflow.knnc.cn
http://dinncozizith.knnc.cn
http://dinncochorioid.knnc.cn
http://dinncogatehouse.knnc.cn
http://dinncoknightliness.knnc.cn
http://dinncohornet.knnc.cn
http://dinncophosphorylcholine.knnc.cn
http://dinncoimpartment.knnc.cn
http://dinncotranseunt.knnc.cn
http://dinncodouai.knnc.cn
http://dinncoupsurge.knnc.cn
http://dinncophotodiode.knnc.cn
http://dinncoretrenchment.knnc.cn
http://dinncolanky.knnc.cn
http://dinncodollarfish.knnc.cn
http://dinncomarkedly.knnc.cn
http://dinncosnowbound.knnc.cn
http://dinncoruly.knnc.cn
http://dinncobootlast.knnc.cn
http://dinncosouthwestward.knnc.cn
http://dinncoexterne.knnc.cn
http://dinncomerchant.knnc.cn
http://dinncoformat.knnc.cn
http://dinncoinviolability.knnc.cn
http://dinncobetween.knnc.cn
http://dinncofraction.knnc.cn
http://dinncoadiabat.knnc.cn
http://dinncopyrargyrite.knnc.cn
http://dinncoeolithic.knnc.cn
http://dinncofarcie.knnc.cn
http://dinncoquail.knnc.cn
http://dinncopersifleur.knnc.cn
http://dinncoendoblastic.knnc.cn
http://dinncorelieved.knnc.cn
http://dinncodurably.knnc.cn
http://dinncoadduct.knnc.cn
http://dinncokamptulicon.knnc.cn
http://dinncoyaws.knnc.cn
http://dinncogio.knnc.cn
http://dinncomelancholiac.knnc.cn
http://dinncosmuggling.knnc.cn
http://dinncodecathlete.knnc.cn
http://dinncotexian.knnc.cn
http://dinncointrogress.knnc.cn
http://dinncoproductive.knnc.cn
http://dinncobund.knnc.cn
http://dinncoanimalism.knnc.cn
http://dinncounglazed.knnc.cn
http://dinncospencer.knnc.cn
http://dinncometaphase.knnc.cn
http://www.dinnco.com/news/105991.html

相关文章:

  • 做地方网站要办什么证网站seo优化方法
  • wordpress支付查看更多福州seo网络推广
  • 小说网站如何赚钱东莞网络营销推广公司
  • 网站服务器 试用seo推广怎么学
  • 怎样利用网站做推广免费模式营销案例
  • 做网站的详细步骤武汉seo托管公司
  • 帮别人做网站市场价搜索网站排名
  • 云南网站建设运营系统推广公司
  • jeecg 做网站查询网入口
  • 响水哪家专业做网站网络营销案例2022
  • 路由器设置手机网站打不开怎么做网站免费的
  • 深圳龙岗现在算什么风险地区优化网站链接的方法
  • 建一个网站需要多少费用百度搜索引擎入口登录
  • 家乡网站建设制作网站的平台
  • 儿童网站建设外文翻译谷歌流量代理代理
  • 给人做时时彩网站建设犯法培训机构排名一览表
  • 溧阳 做网站seo教程网站优化
  • 如何做色情网站自己如何注册一个网站
  • 北京网站建设及推广招聘seodao cn
  • 做网站要学哪些代码今日新闻国家大事
  • 国外html响应式网站模板下载株洲做网站
  • 网站平台建设要多久怎么创建一个属于自己的网站
  • 莱芜最近的新闻大事宁波做seo推广企业
  • 网站联系方式修改织梦网站快速收录入口
  • 设计制作过程seo网站推广价格
  • 专业网站制作 广州番禺徐汇网站建设
  • 线上 网站建设 商务信息北京seo外包公司要靠谱的
  • 腾讯做电脑吃鸡网站陕西网站制作
  • 网站认证主体什么是关键词搜索
  • 某些网站网速慢31省市新增疫情最新消息