vue3 编译vue文件为ts类型问题createSlots

该文件为vue3+ts

编译前vue文件:

image.png

将vue文件使用 包 @vue/compiler-sfc 中的 compilerTemplate 方法进行编译,编译后为ts文件(正常流程会下一步使用 tsc 编译为 js 脚本,但现在参数类型有问题,tsc编译不通过,中间无使用其他代码额外处理):

image.png

image.png

在157行,createSlots 传入参数有问题,看了下Slot参数没有数字类型,各位有没有遇到?

但看了下 vue 官方测试用例中也有 createSlots 传入数字情况.

项目:core
文件位置:packages/runtime-core/__tests__/componentSlots.spec.ts

image.png

最后总结下问题,该vue sfc文件使用vue3+ts编写,使用 compilerTemplate 方法编译 vue 文件生成 ts 文件,其中因为生成的文件中 createSlots 参数传入 slotType 为数字类型,而内部参数并未进行定义数字类型,会有不兼容情况,这个是需要手动处理吗?

或者说这是个官方未修复的一个问题吗?

过来人聊聊。

阅读 1.7k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题