Vue.js Vuejs动态更改道具

Vue.js Vuejs动态更改道具,vue.js,Vue.js,我有一个组件上传,它将类型传递给Alert.vue,这样就可以了。我想要的是将危险、警告或成功传递到alert.vue中,并在课堂上进行讨论 像这样: <alert :loading="false" loadingtext="" type="danger" :alerttext="errortypes[file.error]" v-if="file.error">{{file.error}}</alert> 导出默认值{ 道具:{ 类型:字符串, alerttext:

我有一个组件上传,它将类型传递给Alert.vue,这样就可以了。我想要的是将危险、警告或成功传递到alert.vue中,并在课堂上进行讨论

像这样:

<alert :loading="false" loadingtext="" type="danger" :alerttext="errortypes[file.error]" v-if="file.error">{{file.error}}</alert>

导出默认值{
道具:{
类型:字符串,
alerttext:String,
加载:布尔,
加载文本:字符串
},
创建(){
this.newtype='alert-alert-'+this.type+'fade-in-alert-dismissible';
},
数据:函数(){
返回{
新类型:“”
}
},
}
找到了解决方案:

<alert :loading="false" loadingtext="" type="danger" v-if="file.error">{{file.error}}</alert>

<div v-bind:class="setType(type)" role="alert">

methods: {
    setType(type) {
        return 'alert alert-' + type + ' fade in alert-dismissible';
    }
},
{{file.error}
方法:{
设置类型(类型){
返回“警报警报-”+类型+“淡入警报可解除”;
}
},
<template>
    <div :class="type" role="alert">
        <a href="#" class="close" data-dismiss="alert" aria-label="close" title="close">×</a>
        <span v-html="alerttext"></span>
        <loading v-show="loading" :loadingdata="loadingtext"></loading>
    </div>
</template>
<script>
    export default {
        props: {
            type: String,
            alerttext: String,
            loading: Boolean,
            loadingtext: String
        },
        created() {
            this.newtype = 'alert alert-' + this.type + ' fade in alert-dismissible';
        },
        data: function () {
            return {
                newtype:''
            }
        },
    }
</script>
<alert :loading="false" loadingtext="" type="danger" v-if="file.error">{{file.error}}</alert>

<div v-bind:class="setType(type)" role="alert">

methods: {
    setType(type) {
        return 'alert alert-' + type + ' fade in alert-dismissible';
    }
},