一.Vue非父子组件传值(Bus/总线/发布订阅模式/观察者模式) 我们在之前已经知道了父子传值.父组件传递过来了的值,在子组件通过props接受,然后就可以使用了. 也学过了隔代传值,均是通过props逐层传递实现.那么,兄弟节点之间怎么传值呢? 那就是通过bus啦. 通过bus实现方式如下: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8">…
一.组件 1> 组件命名方式有两种(注意:在DOM模板中只有kebab-case命名方法才生效): html中引用组件: <!-- 在DOM模板中,只有 kebab-case命名才生效 --> <my-component-name></my-component-name> script: Vue.component('my-component-name',{ template:'<div>这是第一种命名方式:kebab-case</div>…
一:什么是插槽? 插槽(Slot)是Vue提出来的一个概念,正如名字一样,插槽用于决定将所携带的内容,插入到指定的某个位置,从而使模板分块,具有模块化的特质和更大的重用性. 插槽显不显示.怎样显示是由父组件来控制的,而插槽在哪里显示就由子组件来进行控制 二:怎么用插槽? 2.1默认插槽 子组件 <template> <div class="slotcontent"> <ul> <!--<slot></slot>-->…
插槽(slot)这个概念非常重要 插槽的使用场景1:在子组件里面显示父组件的dom <div id='root'> <child content = '<p>Dell</p>'></child> </div> <script> Vue.component('child',{ props:['content'], template:` <div> <p>hello</p> <div…
最近在自学 Vue 也了解了一些基本用法,也记录了一些笔记有兴趣的朋友可以去查看我的其他文章,技术这东西真的不能光靠看,看是没有的,你必须要动手实践,只有在实战项目中才能发现问题,才能发现我们没有掌握的知识点,然后发现问题解决问题,我们的能力才能得以提升,要不然就有点眼高手低了. 基于这个想法于是就开始自己去撸了一个旅游网站,旅游网站嘛避免不了城市的选择,所以在实现城市选择列表的时候碰到的一些问题,以及解决办法今天就记录下来做一个总结. 城市列表选择组件 首先说说我们要实现一个什么样的城市选择组…
component 动态组件 Vue官网上提供了一个动态组件 <component :is="currentTabComponent"> ,那么这里的 is 到底是什么呢? 官网介绍的太分散了,这里尽量全面的列举出来.如果有遗漏欢迎补充. 原生HTML <component is="input" placeholder="原生HTML" value='123'></component> <componen…
好家伙, 1.什么是插槽? 插槽是vue为组件的封装者提供的能力.允许开发者在封装组件时, 把不确定的,希望由用户指定的部分定义为插槽   我们依然可以把它理解为一个占位符 1.1.插槽的基本用法 试例项目目录如下: 在Left.vue组件中: <template> <div> <!-- 声明一个插槽区域 --> <slot></slot> </div> </template> 在App.vue组件中: <templ…
插槽(slot):是组件的一块HTML模板,父组件决定这块模板显不显示以及怎么显示. 位置由子组件自身决定(slot现在组件template的什么位置,父组件传过来的模板将来就显示在什么位置) 匿名插槽:只能有一个,可以放在组件的任何位置 <div class="father"> //在父组件在里面写了html模块 <son> //子组件的匿名插槽被下面的div模板使用了 <div> <span>菜单1</span> <…
刚开始我们淡淡提过<slot></slot>现在深入了解一下. slot可以进行父组件传值到子组件. 比如:我们将hiboy通过<slot>传递到组件中. <body> <div id="app"> <hello> Hi boy </hello> </div> </body> <script> Vue.component("hello",{ dat…
一例打尽..:) <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <link rel="stylesheet" href="demo.css" /> </head> <body> <div id="app"> <u…