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

威海专业网站建设网站后台更新 前台看不到

威海专业网站建设,网站后台更新 前台看不到,服装公司网站规划建设,做苗木网站哪个公司好子组件接受父组件传递的事件 1.子组件使用事件名$emit(父组件中传递的事件名,想给父组件传递的参数(可选)) click$emit(click) 2.子组件使用 v-on$listeners 父组件#xff1a; templatediv idappmyCo… 子组件接受父组件传递的事件 1.子组件使用事件名$emit(父组件中传递的事件名,想给父组件传递的参数(可选)) click$emit(click) 2.子组件使用 v-on$listeners 父组件 templatediv idappmyComponents :msgform.msg clicka//div /templatescript import myComponents from ./components/myComponents;export default {name: App,components: {myComponents},data(){return {form:{msg: 10}}},methods:{a(){console.log(哈哈哈)},} } /scriptstyle/style子组件 templatediv!-- 子组件接收父组件传来的参数--!-- v-on$listeners 和 click$emit(click) 效果一样 两者选一即可--h1 v-on$listeners click$emit(click){{ msg }}/h1/div /templatescript export default {name: my-Components,props: {msg: {type: String,default: 18}},created() {console.log(this.$listeners) //一个对象里面包含父组件传递过来的所有事件},methods: {} } /script style scoped /style父组件传值给子组件 1.子组件使用props声明想要的属性再将该属性动态绑定给子组件 props: {msg: {type: String,default: 18}, },然后子组件中绑定数据即可     父组件使用prop声明就可以传递给子组件 :propmsg Head1 :nameform.name/ 2.子组件使用$attrs这个组件包含了被传入但没有声明的prop 子组件 templatediv!-- 子组件接收父组件传来的参数--h1{{ msg }}/h1/div /templatescript export default {name: my-Components, //不声明msg// props: {// msg: {// type: String,// default: 18// },// },created() {console.log(this.$attrs) //一个对象包含父组件中被传入但没有声明的prop},methods: {} } /scriptstyle scoped /style打印结果  此时h1标签上就有msg属性 templatediv!-- 子组件接收父组件传来的参数--h1 v-bind$attrs {{this.$attrs.msg}}/h1/div /template页面显示结果 需要注意的一点是Vue会将被传入但未声明的prop作为html属性绑定到组件的根元素上 可以设置属性 inheritattrs为false将这些默认行为去掉来解决这个问题。 templatediv!-- 子组件接收父组件传来的参数--h1 v-bind$attrs {{this.$attrs.msg}}/h1/div /templatescript export default {name: my-Components,inheritAttrs:false, } /scriptstyle scoped /style对外暴露子组件插槽 1.直接向子组件转发插槽使用父组件的 $slots  该组件包含了传递给父组件的非作用域插槽 使用$scopeSlots可传递给父组件的作用域插槽这个组件包含了组件接受的所有插槽 子组件 template el-input v-modelinnerVal v-bind-$attrs input$emit(input, $event)v-on-$listeners//子组件中写两个插槽 template #append slot nameappend/slot/template template #prepend slot nameprepend/slot/template /el-input /template 打印this.$slots props validator 一般我们会用对象的形式声明prop,可以在对象中指定prop的默认值也可以指定类型对prop进行验证。 一个更灵活的的方式是传入并编写一个验证函数prop会作为参数传入该函数函数返回fals时会抛出控制台警告这种方式特别适合验证枚举值 子组件 templatediv!-- 子组件接收父组件传来的参数--h1 v-on$listeners click$emit(click) v-bind$attrs {{this.$attrs.msg}}/h1/div /templatescript export default {name: my-Components,inheritAttrs:false,props:{numberIs:{default: 1,//当传入的prop值不是1,2,3时控制台会抛出警告validator: prop [1, 2, 3].includes(prop)}}, } /script style scoped /style父组件 templatediv idapp!-- 传入numberIs的值为4 --myComponents :msgform.msg clicka numberIs4//div /templatescript import myComponents from ./components/myComponents;export default {name: App,components: {myComponents},data() {return {form: {msg: 10},}},methods: {a() {console.log(哈哈哈)},} } /scriptstyle/style$refs用于父组件获取整个子组件实例然后可以使用子组件的方法和属性暴露子组件方法 父组件 templatediv idapp!-- ref相当于给当前子组件设置了一个id可以使用refs根据ref的值获取该组件 --myComponents :msgform.msg clicka numberIs1 refbb//div /templatescript import myComponents from ./components/myComponents;export default {name: App,components: {myComponents},data() {return {form: {msg: 10},}},methods: {a() {//获取ref值为bb的子组件并调用该子组件上的show方法this.$refs.bb.show()},} } /scriptstyle/style子组件 templatediv!-- 子组件接收父组件传来的参数--h1 v-on$listeners v-bind$attrs {{this.$attrs.msg}}/h1/div /templatescript export default {name: my-Components,inheritAttrs:false,props:{numberIs:{default: 1,//当传入的prop值不是1,2,3时控制台会抛出警告validator: prop [1, 2, 3].includes(prop)}},created() {},methods: {show(){console.log(1111)}} } /script!-- Add scoped attribute to limit CSS to this component only -- style scoped /style打印 this.$refs 显示为 点击之后控制台输出 但在封装子组件后如果不对子组件的方法进行暴露调用时我们往往需要通过ref先获取父组件实例再获取子组件实例这种方式导致组件代码难以维护 //获取父组件bb之后再获取子组件aa最后使用aa中的show方法 this.$refs.bb.$refs.aa.show() 我们可以再父组件中提供与子组件同名的方法 对外暴露让使用者只通过父组件就可以进行调用 子组件中 methods:{show() {this.$refs.aa.show()} } 父组件中 methos: {show() {this.$refs.bb.show()} }总结 1. $attrs 简化多层组件之间props传值 2. $listeners 简化多层组件之间事件传递 3. $Slots 更多拓展自定义组件传值包括自定义html元素及对象 4. props validator 增强组件传值稳健性可自定义业务代码效验参数 5. $refs 对外提供API 增强组件灵活度和可控性
http://www.pierceye.com/news/619733/

相关文章:

  • 自建网站做外贸谷歌推广网站内部资源推广方法
  • 网站数据库5g一个人看的免费视频高清直播
  • 怎么做网站注册推广泰州网站建设费用
  • 找南阳建立网站的公司网址大全最新版的
  • 网站建设与维护就业前景小程序开发外包注意事项
  • 胶州网站建设哪里有天润网站建设
  • 网站备案 怎么加搜索引擎网站建设
  • 做外贸自己开公司网站网站建设三个友好
  • 深圳高端品牌网站设计网站建设实训报告收获
  • 万虹点读机如何做系统下载网站网站seo的重要性
  • 同一家公司可以做几个网站吗铁岭网站开发公司
  • 网站推广费用大概需要多少钱个人二级网站怎么做
  • 查询企业的网站有哪些山东平台网站建设找哪家
  • 如何推广外贸型网站wordpress本地环境迁移
  • 网站建设国内外现状网站建设公司 网络服务
  • 百度网站首页福田时代汽车官方网站
  • 网站建设智推网深圳进出口贸易有限公司
  • 网站开发语言pwordpress v4.9.5
  • 东莞建站模板源码东莞注塑切水口东莞网站建设
  • 做文案策划需要看什么网站服装网站开发目的
  • 湖北定制型网站建设微信公众平台网页版
  • 需要做网站的公司有哪些免费网页模板之家
  • 淘客网站怎么备案合肥在线官网
  • 马上飞做的一些网站免费自助建站系统有哪些
  • 建网站投放广告赚钱wordpress全屏弹窗插件
  • 电子商务公司网站模版通辽网站建设公司
  • 国外社交网站建设苏州seo门户网
  • 小程序建站公司唐山网页搜索排名提升
  • 网站后台模板北京网络营销方案
  • 网站如何不被百度搜到浙江网站怎么做推广