用jsx写vue组件,怎样监听.sync修饰符的事件?

jsx 来写 vue 的组件,需要监听 .sync 修饰符的事件,找不到文档,我试过下面的方法,但是并不行。

<MyComponent visible={this.visible} {...{['on-update:visible']: console.log}} />

求问,正确的写法应该要怎样呢?

阅读 7.9k
2 个回答

babel-plugin-transform-vue-jsx 的 example 中找到了答案,可以这样写:

<MyComponent visible={this.visible} {...{on:{'update:visible': console.log}}} />
                <el-dialog
                  visible={this.Visible}
                  on={{
                    ['update:visible']: () => {
                      this.Visible = false;
                    }
                  }}
                >

这样写会导致vscode检测有问题,从这往下的静态的高亮、注释方式 都不对了(不过功能没问题)

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题