veaury
veaury copied to clipboard
关于类型推论
经过applyPureReactInVue或者applyPureVueInReact包裹的组件之后返回的组件怎么样才能有正确的类型推论呢?目前的做法时下面的这种,有更好或者更正确的方法吗
import Editor from '@/react_app/Editor'
import { applyPureReactInVue } from 'veaury'
const EditorReact: typeof Editor = applyPureReactInVue(Editor)
@OPBR 你的做法应该不正确,因为applyPureReactInVue返回的是一个vue组件,不能直接使用react组件的类型推断 正常可以建议你推断为any或者一个Vue的Component类型
其实期望的是它可以自己有返回值类型,手动推断为any的话,那么在组件中使用就很难有好的类型提示了。另外一点就是这个库支持在服务端渲染项目中使用吗?
@OPBR 第一个问题,函数返回值的类型是一个动态的vue或者react组件,因为所有的转换都是运行时的,所以无法明确具体转换后的类型包含哪些属性,不过确实可以提供一个泛型用来转换原始组件中类型。 第二个问题,veaury是客户端运行时库,直接用在ssr中使用不会报错,并且也能正常渲染,因为最终还是会在客户端才执行,并不会在服务端运行,因为基于了客户端的生命周期