Vue2.0树组件(可根据需求自行修改)

本文介绍如何在Vue2.0中创建一个可配置的树组件,涵盖数据处理、递归组件和事件处理,帮助开发者根据实际需求进行定制。
摘要由CSDN通过智能技术生成
// treeMenus组件 主要生成树的样式 树的状态改变将数据向父组件传递
<template>
  <ul>
    <li v-for="(item,index) in list" :key="index">
	  <img class="icon1" v-if="item.children && item.children.length && !item.open" src="./close.jpeg" @click="changeOpen(item)" />
	  <img class="icon1" v-if="item.children && item.children.length && item.open" src="./open.jpeg" @click="changeOpen(item)" />
	  <img class="icon2" v-if="item.checked" src="./yxz.jpeg" @click="changeCheck(item,parent)" />
	  <img class="icon2" v-if="!item.checked" src="./wxz.jpeg" @click="changeCheck(item,parent)" />
	  {
   {
   item.name}}
     
      <tree-menus v-if="item.open && Array.isArray(item.children) && item.children.length " :list="item.children" :parent="item"
	  @treeChangeOpen="changeOpen" @treeChangeCheck="changeCheck" ></tree-menus>
    </li>
  </ul>
</template>
 
<script>
export default {
   
  name: "treeMenus",
  props: {
   
	parent:{
   
		type:Object,
		default:null
	},
    list: {
   
      type: Array,
      default: ()=>[]  
    }
  },
  methods: {
   
    changeOpen(item) {
   
		this.$emit('treeChangeOpen',item);
    },
	changeCheck(item,parent){
   
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Vue2.0中,父子组件之间可以通过props属性和$emit方法进行函数的传递。 首先,在父组件中,通过props属性将函数传递给子组件。在父组件中定义一个函数,然后将它添加到子组件的props中。例如: ```js // 父组件 <template> <div> <child-component :childFunction="parentFunction"></child-component> </div> </template> <script> export default { methods: { parentFunction() { // 在父组件中定义的函数 } } } </script> ``` 然后,在子组件中,通过this.$emit方法将其作为事件,从而调用父组件中的函数。在子组件中通过$emit方法触发一个事件,并将需要传递的参数传递给父组件中的函数。例如: ```js // 子组件 <template> <div> <button @click="childFunction">点击按钮</button> </div> </template> <script> export default { props: { childFunction: { type: Function, required: true } }, methods: { childFunction() { this.$emit('child-function'); } } } </script> ``` 最后,在父组件中,监听子组件的事件,并调用相应的处理函数。在父组件中通过v-on指令监听子组件触发的事件,并在相应的处理函数中调用父组件本身的函数。例如: ```js // 父组件 <template> <div> <child-component :childFunction="parentFunction" @child-function="handleChildFunction"></child-component> </div> </template> <script> export default { methods: { parentFunction() { // 在父组件中定义的函数 }, handleChildFunction() { // 处理子组件触发的事件 } } } </script> ``` 通过上述的方式,就可以在Vue2.0中实现父子组件之间的函数传递。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值