账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    小程序根据父组件的值,动态显示影藏子组件
    30
    0

    子组件:
    <view class='dialog' hidden='{{show}}'>
    <view>{{title}}</view>
    <view>{{content}}</view>
    <view class='btn'>

    <text bindtap='confirmEvent'>确定</text>
    <text bindtap='cancelEvent'>取消</text>

    </view>
    </view>
    子组件js:
    properties: {

    title:{
      value:"弹窗",
      type: String,
    },
    content: {
      value: "这是一个自定义弹窗",
      type: String,
    },
    show:{
      type:Boolean,
      value:false
    }

    },
    /**

    • 组件的初始数据

    */
    data: {
    },
    ready:function(){

    console.log("ready")

    },
    父组件:
    <compontent_child id="child" data-show="{{show}}" title="11111111" content="2222222222" bindcancelEvent="_cancelEvent"

      bindconfirmEvent="_confirmEvent"></compontent_child>

    <button bindtap='showDialog'>点击出现弹窗</button>
    父组件js:
    // pages/parent/parent.js
    Page({

    /**

    • 页面的初始数据

    */
    data: {

    show:true

    },

    showDialog:function(e){

    this.setData({
      show:!this.data.show,
    })
    console.log(this.data.show)

    }
    })

    目前是想根据父组件的showDialog事件,控制show,使用data-show传给子组件,子组件接收show的值,从而控制显示和隐藏

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 執傘待亽歸 普通会员 1楼

      在小程序中,可以通过子组件的props属性获取父组件的值,然后动态显示。以下是一个简单的例子:

      首先,父组件:

      javascript <view> <child-component @child-data="handleChildData" /> </view>

      子组件:

      javascript props: { childData: { type: String, default: '' } }, methods: { handleChildData(data) { this.$emit('child-data', data); } }

      然后,在父组件的data属性中,可以通过childData属性获取子组件的数据:

      javascript data() { return { childData: '' } },

      在子组件中,可以通过handleChildData方法获取子组件的数据:

      javascript methods: { handleChildData(data) { console.log(data); // 在这里可以看到子组件的数据 } }

      在这个例子中,当父组件的childData属性的值改变时,子组件的handleChildData方法会被调用,子组件的数据也会被动态显示。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部