美文网首页
uni组件传值注意

uni组件传值注意

作者: 杨充211 | 来源:发表于2020-05-24 10:56 被阅读0次

目录介绍

  • 01.组件传值遇到坑
  • 02.父组件传值给子组件
  • 03.子组件传值给父组件

01.组件传值遇到坑

  • 子组件给父组件传值注意点
    • 注意子组件触发事件定义的方法,首先在父组件中需要绑定子组件内部对应事件,然后一定要和父控件接受的保持一致,否则无法传递数据。
    //在area.vue中,进行事件触发,传递数据
    this.$emit('onConfirm',true, selectVal)
    
    //在select-school.vue中,需要在在子组件标签上绑定子组件内部对应事件,并且方法名一致
    <!-- 地区选择器 -->
    <optional :status='show' @onUpdate='onUpdate' @onConfirm='onConfirm'></optional>
    
  • 遇到疑问?
    • 要是同级的组件,那么该如何传递数据呢?

02.父组件传值给子组件

  • 父组件的代码如下
    <!-- 父组件传子组件 -->
    <!-- 父组件内部写法 -->
    <template>
        <view>
            <h2>父组件</h2>
            <!-- 绑定自定义属性传递数据 -->
            <children style="color: #0000FF;" :value="valPar" ></children>
        </view>
    </template>
    
    <script>
        //引入子组件
        import children from "../../pages/ele/element-children1.vue"
        export default {
            data() {
                return {
                    valPar:"父组件传递过来的值"
                }
            },
            components:{
                //注册子组件
                children
            },
        }
    </script>
    
  • 子组件的代码如下
    <!-- 父组件传子组件 -->
    <!-- 子组件内部写法 -->
    <template>
        <h2>子组件收到:{{value}}</h2>
    </template>
    
    <script>
        export default {
            props:{
                value:{
                    type:String,
                    default:"默认值"
                }
            },
            data() {
                return {
                    
                }
            },
        }
    </script>
    

03.子组件传值给父组件

  • 父组件的代码如下
    <!-- 子组件传父组件 -->
    <!-- 父组件内部写法 -->
    <template>
        <view>
            <!-- 接收到子组件传递的数据 -->
            <h2>父组件接收到的值:{{valueChild}}</h2>
            <!-- 在子组件标签上绑定子组件内部对应事件,并触发对应回调 -->
            <children style="color: #0000FF;" @Transmit="handle"></children>
        </view>
    </template>
    
    <script>
        //引入子组件
        import children from "../../pages/ele/element-children2.vue"
        export default {
            data() {
                return {
                    //定义属性接收数据
                    valueChild:"",
                }
            },
            components:{
                //注册子组件
                children
            },
            methods:{
                // 子组件内部触发事件对应回调handle
                handle(val){
                    this.valueChild=val;
                }
            }
        }
    </script>
    
  • 子组件的代码如下
    <!-- 子组件传父组件 -->
    <!-- 子组件内部写法 -->
    <template>
        <view>
            <h2>子组件</h2>
            <!-- 点击按钮进行事件触发 -->
            <button @click="handleTransmit">点击给父组件传值</button>
        </view>
    </template>
    
    <script>
        export default {
            data() {
                return {
                    //要传递的数据
                    valueParent: "子组件传递过来的数据"
                }
            },
            methods: {
                handleTransmit() {
                    // 进行事件触发,传递数据
                    this.$emit("Transmit", this.valueParent)
                }
            }
        }
    </script>
    

相关文章

  • uni组件传值注意

    目录介绍 01.组件传值遇到坑 02.父组件传值给子组件 03.子组件传值给父组件 01.组件传值遇到坑 子组件给...

  • uniapp 组件传值

    组件传值 在 组件A 中,通过 uni.$emit('事件名称',参数) 发送事件 在 组件B 中,通过 uni....

  • vue父子组件传值和非父子组件之间的传值、插槽

    1.父组件向子组件传值 父组件向子组件传值,通过属性的方式进行,子组件用props进行接收。 注意在这个传值过程中...

  • iView学习

    父组件向子组件传值 子组件向父组件传值 父组件向子组件传递数据双向绑定问题 注意:声明周期问题 data() 加载...

  • React组件之间的传值

    父组件传值给子组件,是通过属性传值,子组件接收父组件传过来的值,是通过this.props.xxx 注意,当项目复...

  • 父子组件传值

    1、父组件向子组件传值 父组件通过属性绑定的方式向子组件传值 子组件通过props接收注意:子组件只可以使用父组件...

  • Vue - 传值

    Vue 传值有两种:1)父组件向子组件传值(属性传值,Prop传值)2)子组件向父组件传值 一、父组件向子组件传值...

  • 组件之间的传值

    组件之间的传值,包括父子组件传值,兄弟组件之间的传值,其中父子组件包括父组件向子组件传值和子组件向父组件传值,现在...

  • Vue_组件间传值

    1、父组件传值给子组件2、子组件传值给父组件 1、父组件传值给子组件 2、子组件传值给父组件

  • 2018-09-05

    组件传值问题 父组件给子组件传值应该使用props。子组件要给父组件传值,需要调用父组件传递的方法。props传值...

网友评论

      本文标题:uni组件传值注意

      本文链接:https://www.haomeiwen.com/subject/enpdahtx.html