我有一个Vue组件,我想更新Root中的数据源。我已经使用道具进行此操作,但是我在向其添加第二个名为titleActive
的来源时遇到问题,titleActive
的值不会在根目录上更新。
组件JS
<template>
<div>
<label v-for="topic in topics" class="radio-inline radio-thumbnail">
<input type="radio" @click="selectedValue(topic)" name="topics_radio" :id="topic.id" :value="topic.name" :checked="value && topic.id == value.id">
<span class="white-color lg-text font-regular text-center text-capitalize">{{ topic.name }}</span>
</label>
<ul class="hidden">
<li>{{ value }}</li>
</ul>
</div>
</template>
<script>
export default {
props: ['value','titleActive'],
data () {
return {
topics: [],
titleActive: false
}
},
methods:{
selectedValue(topic){
this.$emit('input', topic);
this.titleActive = true;
}
},
mounted(){
axios.get('/vuetopics').then(response => this.topics = response.data);
}
}
</script>
Vue实例
<script>
var App = new Vue({
el: '#app',
data: {
selectedTopic: null,
selectedKeywords: null,
selectedProfiles: null,
questionTitle: null,
titleActive: false
},
methods: {
titleBlur: function(){
// this.selectedTopic = null;
}
}
});
</script>
HTML
<div class="form-group" id="app">
<topic v-model="selectedTopic"></topic>
</div>
答案 0 :(得分:1)
所以我以错误的方式解决这个问题。因此,对于处理元素的任何其他人,您需要在例如具有3个步骤的表单之间切换类,您可以使用以下方法。
selectedTopic
现在我们需要一种循环突出显示类的方法,幸运的是你可以使用Vues v-bind:类功能。您只需要比较多个值来确定哪个值应该具有该类。
v-bind:class="{ highlight: !selectedTopic &&
!questionTitle }"
v-bind:class="{ highlight:
selectedTopic && !questionTitle }"
v-bind:class="{ highlight: questionTitle && !questionDescription
}"
使用这种通过检查加载了哪些值来获取真实语句的方法将有助于这些情况。