a***@qq.com
a***@qq.com
  • 发布:2023-05-08 17:42
  • 更新:2023-05-08 17:42
  • 阅读:252

【报Bug】vue3 defineProps 通过接口定义类型,不会编译成预想结果,并不会限制传入类型

分类:uni-app

产品分类: uniapp/小程序/阿里

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: 10.0.19045

HBuilderX类型: 正式

HBuilderX版本号: 3.7.11

第三方开发者工具版本号: 3.6.4

基础库版本号: 2.0

项目创建方式: HBuilderX

操作步骤:

预期结果:
props: {  
  message: {  
    type: String,  
    required: true  
  },  
  age: Number  
}

实际结果:
  props: {  
    message: null,  
    age: null  
  },

bug描述:

无法通过接口定义类型,编译后不对,在父组件传入message类型为Number类型就导致不报错,无法获得提示

<script setup lang="ts">  
    interface Props {  
        message : string  
        age ?: number  
    }  
    const props = defineProps<Props>()  
    // const props = withDefaults(defineProps<Props>(), { message: '123' })  
    // const props = defineProps<{  
    //  message : string  
    //  age ?: number  
    // }>()  
    // const props = defineProps({  
    //  message: String,  
    //  age: Number  
    // })  
        // const props = defineProps({  
    //  message: {  
    //      type: String,  
    //      required: true  
    //  },  
    //  age: Number  
    // })  
</script>

编译结果为:

  props: {  
    message: null,  
    age: null  
  },

预期结果:

props = {  
  message: {  
    type: String,  
    required: true  
  },  
  age: Number  
}
2023-05-08 17:42 负责人:无 分享
已邀请:

要回复问题请先登录注册