如何在没有模板部分的 Vue SFC 中使用新的 <script setup> 语法?

How can I use new <script setup> syntax in Vue SFC without template section?

当我尝试使用 <script setup> 而没有 <template> 编写 SFC 时,我在控制台 [Vue warn] Component is missing template or render function.

中收到警告

有什么解决方法吗?

显然,您需要一个模板或渲染函数。既然不想用template,可以考虑用render function

不幸的是,渲染功能似乎不适用于设置。

<script lang="ts">
export default defineComponent({
  render() {
    return h("div", {}, this.a);
  }
});
</script>

<script lang="ts" setup>
import { defineComponent, ref, h } from "vue";

const a = ref(1);
</script>

<style scoped></style>

有关更多信息,您可以在此处查看 render-function(official doc)

Vuejs dev answers,在这种情况下可以使用空 <template>