使用jsx的vue3,但是h或this$createElement不是函数


<script>
export default {
name: "ref",
props: {
msg: String,
},
render(h) {
return h("tag", {}, ["123"]);
},
};
</script>

如果我使用上面的代码,一些错误h不是控制台中的函数,但如果我使用以下代码:

<script>
export default {
name: "ref",
props: {
msg: String,
},
render(h) {
return () => h("tag", {}, ["123"]);
},
};
</script>

页面中的元素不是123,而是字符串。它不是HTML元素的秘密,我该如何解决它。

function () { return h("tag", {}, ["123"]); }

我相信您现在已经解决了这个问题,但h()函数现在是全局导入的。

您需要在此代码段的顶部添加:import {h} from 'vue'

你可以在这里看到更多关于原因的信息:https://github.com/vuejs/rfcs/blob/master/active-rfcs/0008-render-function-api-change.md#globally-导入h-函数

相关内容

最新更新