zuijianren 2021-06-15 20:50 采纳率: 100%
浏览 1407
已结题

vue3的render函数绑定点击事件失败

 app.component("child", {
        props: ["count"],
        methods: {
          handleClick() {
            console.log("test");
          },
        },
        render() {
          const { h } = Vue;
          return h(
            "div",
            {
              on: {
                click: this.handleClick,
              },
              style: {
                cursor: "pointer",
              },
            },
            " count: " + this.count
          );
        },
      });

代码如上,我想使用render函数创建一个组件模板,并且给该组件绑定一个点击事件,为什么不能成功?应该怎么写,上面是我百度的写法。可这写法写上去,只是让html代码多一个on的属性,和事件没什么关系。

<div on="[object Object]" test="test" style="cursor: pointer;"> count: 1</div>
  • 写回答

3条回答 默认 最新

  • 前端-海鸟 2021-06-15 22:05
    关注

    vue3中需要使用onClick驼峰写法,这样写就生效,具体参考官方文档:https://v3.cn.vuejs.org/guide/render-function.html#h-%E5%8F%82%E6%95%B0

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 4月22日

悬赏问题

  • ¥15 把VMware项目复制到另一台电脑
  • ¥15 onlyoffice编辑完后立即下载,下载的不是最新编辑的文档
  • ¥15 求caverdock使用教程
  • ¥15 Coze智能助手搭建过程中的问题请教
  • ¥15 12864只亮屏 不显示汉字
  • ¥20 三极管1000倍放大电路
  • ¥15 vscode报错如何解决
  • ¥15 前端vue CryptoJS Aes CBC加密后端java解密
  • ¥15 python随机森林对两个excel表格读取,shap报错
  • ¥15 基于STM32心率血氧监测(OLED显示)相关代码运行成功后烧录成功OLED显示屏不显示的原因是什么