账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    iview vue 点击右上角的×关闭报错 Prop being mutated
    23
    0

    iview modal组件拆出去后,点击右上角的×关闭,会报错 Avoid mutating a prop directly since the value will be overwritten whenever the parent component re-renders. Instead, use a data or computed property based on the prop's value. Prop being mutated: "faultModalStatus"

    父组件
     <fault-modal
            :faultModalStatus="faultModalStatus"
            @faultConfirmEvent="faultConfirmEvent"
            @faultCancelEvent="faultCancelEvent"
            @getFaultModalStatusChange="getFaultModalStatusChange"
        >
    
    </fault-modal>
    methods:{
        //监听弹窗的状态
        getFaultModalStatusChange(e){
            console.log(e)
            if(e === false){
                this.faultModalStatus = false;
            };
        },
        //故障呼叫的点击事件
        faultClickEvent(){
            this.faultModalStatus = true;
        },
        //弹出层的事件
        faultConfirmEvent(){
            this.faultModalStatus = false;
        },
        faultCancelEvent(){
            this.faultModalStatus = false;
        }
    },
    子组件            
    <template>
    <div>
        <Row>
            <Col>
                <Modal
                        v-model="faultModalStatus"
                        title="故障呼叫详情"
                        @on-visible-change="getFaultModalStatusChange"
                >
                    <div slot="footer">
                        <div>
                            <Button :loading="buttonLoading" type="success" @click="faultConfirmEvent">确认</Button>
                            <Button class="cancelButton" @click="faultCancelEvent">取消</Button>
                        </div>
                    </div>
                </Modal>
            </Col>
        </Row>
    </div>

    </template>

    <script>

    export default {
        props:{
            buttonLoading:{
                type:Boolean,
                default:false
            },
            faultModalStatus:{
                type:Boolean,
                default:false
            },
            modalEeqName:{
                type:String,
            },
            modalWorkshop:{
                type:String,
            },
            modalProcess:{
                type:String,
            },
            modalRepairPerson:{
                type:String,
            },
            modalFaultClassify:{
                type:String,
            },
            modalDescribe:{
                type:String,
            },
            modalRepairPersonList:{
                type:Array
            },
            modalFaultClassifyList:{
                type:Array
            }
    
        },
        data(){
            return {
                // faultModalStatus:false
                currentIndex:this.faultModalStatus
            }
        },
        methods:{
            //弹出层的事件
            faultConfirmEvent(){
                this.$emit('faultConfirmEvent');
            },
            faultCancelEvent(){
                this.$emit('faultConfirmEvent');
            },
            getFaultModalStatusChange(e){
                this.$emit('getFaultModalStatusChange',e);
            }
        }
    }

    </script>

    <style>

    </style>

    1
    打赏
    收藏
    点击回答
    您的回答被采纳后将获得:提问者悬赏的 10 元积分
        全部回答
    • 共 0 条
    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部