modelValue refactoring start

This commit is contained in:
Mark Harris 2022-02-03 09:58:44 -05:00
parent a4b6c40e00
commit a21e7aa2c4
4 changed files with 30 additions and 12 deletions

View file

@ -30,7 +30,7 @@
:altText="answer.Name ? answer.Name : answer"
screenReaderOnlyText="(opens new window)"
:colLength="this.answers.length < 3 ? '' : '-4'"
v-model="modelValue"
v-model="selectedValues"
data-test="button"
/>
</div>
@ -98,6 +98,14 @@ export default {
}
return classes;
},
selectedValues: {
get: function() {
return this.modelValue;
},
set: function(newValue) {
this.$emit("update:modelValue", newValue);
}
},
},
data(){
return {

View file

@ -28,7 +28,7 @@ export default {
name: "vehicle-year",
data() {
return {
selectedYear: [],
selectedYear: String,
};
},
computed: {},
@ -73,7 +73,7 @@ export default {
watch: {
selectedYear(year) {
this.$store.commit(this.storeMutations.UPDATE_YEAR, year);
this.$router.navigateAfterSave(
this.navigationScenarios.SELECTED_YEAR,

View file

@ -7,7 +7,7 @@
groupName="Choose Vehicle Year"
textPosition="text-start"
:loaderEnabled="true"
v-model="modelValue"
v-model="selectedValueAsArray"
isRequired=true
/>
</template>
@ -26,12 +26,24 @@ export default {
};
},
props: {
modelValue: Array,
modelValue: String,
},
emits: ['update:modelValue'],
components: {
buttonQuestion,
},
computed: {
selectedValueAsArray: {
get: function() {
const modelValueAsArray = this.modelValue ? [this.modelValue] : null;
return modelValueAsArray;
},
set: function(newValue) {
const newValueAsScalar = newValue && newValue.length > 0 ? newValue[0] : null;
this.$emit("update:modelValue", newValueAsScalar);
}
}
},
methods: {
loadInitialData() {
return baseMixin.methods.dispatchNonBlockingStoreAction(
@ -44,10 +56,5 @@ export default {
this.years = initialData;
},
},
watch: {
modelValue(val) {
this.$emit("update:modelValue", val);
},
},
};
</script>

View file

@ -94,8 +94,11 @@ export default {
},
},
watch: {
checkValue(){
this.$emit('isCheckedChanged', {isChecked: this.checkValue, buttonId: this.buttonID});
checkValue(newValue, oldValue){
const isInitialization = typeof(oldValue) !== 'function';
if (isInitialization) {
this.$emit('isCheckedChanged', { isChecked: this.checkValue, buttonId: this.buttonID + '' });
}
}
},
components: {