You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Vue出现Invalid prop告警:modalState预期Boolean类型却得到Function如何解决?

告警成因

你父组件的addSubjectOpen字段初始化写法错误:Boolean是JavaScript内置的布尔构造函数,本身属于Function类型。子组件首次渲染时,mounted钩子尚未执行,此时传给子组件modalState属性的值就是Boolean这个函数,因此触发类型校验告警。mounted执行后会立刻将addSubjectOpen赋值为布尔值,后续运行时属性类型符合要求,所以你会发现功能正常,仅控制台保留首次渲染的告警。

解决方法

直接修改父组件的data初始化逻辑,删掉冗余的mounted赋值即可:

// 原错误写法
data(){
    return{
        addSubjectOpen:Boolean
    }
},
mounted(){
    this.addSubjectOpen = false
},

// 修改后写法
data(){
    return{
        // 直接赋值布尔初始值,不需要用构造函数声明类型
        addSubjectOpen: false
    }
},
// 删掉mounted中对addSubjectOpen的赋值语句

修改后addSubjectOpen从初始化开始就是布尔类型,类型校验不会再触发告警。

内容的提问来源于stack exchange,提问作者KvdLingen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 05:27:01