zoukankan      html  css  js  c++  java
  • vue 父组件调用子组件方法

    情景:

      父组件中引入上传附件的子组件:点击组件可以分别上传对应要求的图片,子组件内部循环可创建多个模块.

      父组件传入数组子组件循环来创建不同的组件模块,所有事件都在子组件内部.

      

      父组件页面的上方同时有一个上传图片按钮上传图片后会显示在第一个模块:

      

      设想思路:点击父组件中的按钮触发子组件中上传方法:

      子组件上定义ref="refName",父组件的方法中用this.$refs.refName.method去调用子组件方法

      子组件中处理上传的方法:  

     fileClick(index) {
         console.log('子组件的fileClick被调用了')
         console.log('index:   '+index)
         // this.aaa();
         if(!this.fileInfor[index].imgUrl){
         //如果当前框里没有图片,则实现上传
         document.getElementsByClassName('upload_file')[index].click();
       }        
    },

      父组件template

    <template>
        <x-button type="submit" class="custom-primary" @click.native="xiechengUpload">上传图片</x-button>
    
        <up-load :fileInformation="fileInformation" ref="uploadRef"></up-load>
    </template>

      父组件method中定义方法,同时传入相应的index值.

    Upload(){
       // console.log('父组件的xiechengUpload被调用了')
       this.$refs.uploadRef.fileClick(0);
    },

    此时就可以通过上传按钮将图片放到子组件的第一个模块中了.

  • 相关阅读:
    结婚电子
    ASP.NET 5简介
    定位500错误!
    Web项目
    JS编程
    CQRS 示例
    领域驱动设计的面向服务架构
    Oracle免费的便捷Web应用开发框架
    ThreadLocal是否会引发内存泄露的分析 good
    应用的代码没有用新的类库来进行编译(转)
  • 原文地址:https://www.cnblogs.com/qiezuimh/p/8668958.html
Copyright © 2011-2022 走看看