收藏
回答

vant weapp Dialog中组件调用beforeClose这个是这么用的?

这个正确的使用方式是什么。或者 有没有其他的方法可以让dialog关闭前校验

回答关注问题邀请回答
收藏

7 个回答

  • 星辰大海
    星辰大海
    2023-10-13

    <!-- 在van-dialog组件中的before-close属性使用要点: -->

    <!-- 1. before-close的参数必须是data中的一个函数; -->

    <!-- 2. 为了在参数函数中使用this,应在onLoad等中调用setData动态设置该函数的实现; -->

    <!-- 3. 不能再配置 bind:close="onDialogClose" bind:confirm="onDialogConfirm" 这两个bind事件了,否则会出现异常行为; -->

    原先通过bind:close和bind:confirm绑定的处理函数,一律都要在beforeClose中处理;

    2023-10-13
    有用 1
    回复
  • 毛毛
    毛毛
    2022-03-01

    可以参考这里:https://blog.csdn.net/zszcc/article/details/119669492

    2022-03-01
    有用 1
    回复
  • 给个眼神自己体会
    给个眼神自己体会
    2021-11-15

    亲测 组件模式,需要把beforeClose的方法写在 data中,然后写一个Promise,使用resolve返回 true false,

    官方居然官方居然没特别说明下,离谱


    2021-11-15
    有用 1
    回复 1
    • Judy
      Judy
      2023-05-23
      写到data,可以调用到了,谢~
      2023-05-23
      回复
  • 裴培
    裴培
    2023-03-14

    1、wxml中

    <van-dialog id="scheduledia"

      use-slot

      title=""

      show="{{ show }}"

      show-cancel-button

      bind:confirm="onConfirm"

      before-close="{{onBeforeClose}}"

    >

    </van-dialog>

    2、js中

    Page({

      data: {

        onBeforeClose:(action)=>{

    if (action === "cancel"){

            return true;

          }

        }

      },

    })


    onConfirm设置show为false,即可关闭窗口,否则窗口不会关联

    2023-03-14
    有用
    回复
  • Curry
    Curry
    2021-08-30

    估计官方根本就没有写组件调用模式 阻止关闭的回调,真有你的 有赞

    2021-08-30
    有用
    回复
  • 一直在,
    一直在,
    2021-02-22

    老哥会用了吗 我还是不会使🤣

    2021-02-22
    有用
    回复 6
    • 一直在,
      一直在,
      2021-02-22
      😑  知道了,没有更新dist文件夹
      2021-02-22
      回复
    • AMmao
      AMmao
      2021-02-28回复一直在,
      老哥  组件内调用怎么写了呐 我一直beforeClose is not a function。。。。 没搞明白
      2021-02-28
      回复
    • AMmao
      AMmao
      2021-02-28
      加 bind:  没报错 但是没执行。。
      2021-02-28
      回复
    • 一直在,
      一直在,
      2021-03-01回复AMmao
      我是在页面内调用的,代码献上,获取你可以参考一下
      2021-03-01
      1
      回复
    • 一直在,
      一直在,
      2021-03-01回复一直在,
      然后是js代码,直接把官网的拿过来
      2021-03-01
      1
      回复
    查看更多(1)
  • 有赞
    有赞
    2021-02-01

    文档中有示例喔,参见 https://vant-contrib.gitee.io/vant-weapp/#/dialog#yi-bu-guan-bi

    2021-02-01
    有用
    回复 6
    • 奋斗
      奋斗
      2021-03-20
      我想知道这样用的话,怎么加beforeClose
      2021-03-20
      回复
    • yhysir
      yhysir
      2021-05-27
      感觉微信小程序之类的产品设计的都是反人类
      2021-05-27
      回复
    • Jerry
      Jerry
      2021-07-20
      这么多人提这个问题,是不是考虑优化一下???
      2021-07-20
      回复
    • 丶灵感仰
      丶灵感仰
      2021-07-21
      这不是api调用么  你发个组件调用的啊  好坑的文档
      2021-07-21
      回复
    • 清酒
      清酒
      2022-10-26
      我把Dialog封装成组件了,怎么调那个beforeClose,在父组件onLoad定义的子组件怎么去使用
      2022-10-26
      回复
    查看更多(1)
登录 后发表内容
问题标签