1.setup函数与setyp语法糖语何区别 为何不需要return
二者在经过编译后产物不一样
setup函数为
const _sfc_main = {
components: {
HelloWorld
},
setup() {
const msg = ref("fsg");
}
};
setup与法糖为
const _sfc_main = /* @__PURE__ */ _defineComponent({
__name: "App",
setup(__props, { expose: __expose }) {
__expose();
const msg = ref("ss");
const __returned__ = { msg, HelloWorld };
Object.defineProperty(__returned__, "__isScriptSetup", { enumerable: false, value: true });
return __returned__;
}
});
后续代码中在执行render函数之前的renderComponentRoot里一个函数结构出setupState 例如
function renderComponentRoot(){
const {
...,
setupState,
...,
} = instance;
}
直接传入render函数内部 所以语法糖无需return