mirror of
https://gitee.com/vant-contrib/vant.git
synced 2025-04-06 03:57:59 +08:00
[bugfix] 修复sku改变后skuMessages没有更新的bug (#627)
This commit is contained in:
parent
267390212b
commit
ce401de06d
@ -54,10 +54,16 @@ export default create({
|
||||
|
||||
data() {
|
||||
return {
|
||||
messageValues: this.messages.map(() => ({ value: '' }))
|
||||
messageValues: this.resetMessageValues(this.messages)
|
||||
};
|
||||
},
|
||||
|
||||
watch: {
|
||||
messages(val) {
|
||||
this.messageValues = this.resetMessageValues(val);
|
||||
}
|
||||
},
|
||||
|
||||
computed: {
|
||||
messagePlaceholderMap() {
|
||||
return this.messageConfig.placeholderMap || {};
|
||||
@ -65,6 +71,9 @@ export default create({
|
||||
},
|
||||
|
||||
methods: {
|
||||
resetMessageValues(messages) {
|
||||
return (messages || []).map(() => ({ value: '' }));
|
||||
},
|
||||
getType(message) {
|
||||
if (+message.multiple === 1) {
|
||||
return 'textarea';
|
||||
|
@ -219,15 +219,17 @@ describe('Sku', (done) => {
|
||||
});
|
||||
|
||||
it('should not render sku group when none_sku is true', (done) => {
|
||||
const newData = Object.assign({}, data);
|
||||
newData.sku.none_sku = true; // eslint-disable-line
|
||||
const newSku = {
|
||||
...data.sku,
|
||||
none_sku: true
|
||||
};
|
||||
|
||||
wrapper = mount(Sku, {
|
||||
attachToDocument: true,
|
||||
propsData: {
|
||||
value: false,
|
||||
sku: newData.sku,
|
||||
goodsId: newData.goods_id,
|
||||
sku: newSku,
|
||||
goodsId: data.goods_id,
|
||||
goods: goods
|
||||
}
|
||||
});
|
||||
@ -364,4 +366,35 @@ describe('Sku', (done) => {
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
it('should reset values when sku change', (done) => {
|
||||
wrapper = mount(Sku, {
|
||||
attachToDocument: true,
|
||||
propsData: {
|
||||
value: true,
|
||||
sku: data.sku,
|
||||
goodsId: data.goods_id,
|
||||
goods: goods,
|
||||
resetStepperOnHide: true,
|
||||
resetSelectedSkuOnHide: true
|
||||
}
|
||||
});
|
||||
|
||||
const newSku = {
|
||||
...data.sku,
|
||||
tree: [],
|
||||
list: [],
|
||||
messages: [],
|
||||
none_sku: true
|
||||
};
|
||||
|
||||
wrapper.vm.sku = newSku;
|
||||
const skuMessages = wrapper.find(Sku.SkuMessages)[0];
|
||||
|
||||
wrapper.vm.$nextTick(() => {
|
||||
expect(wrapper.vm.selectedSku).to.be.empty;
|
||||
expect(skuMessages.vm.messageValues).to.be.empty;
|
||||
done();
|
||||
});
|
||||
});
|
||||
});
|
||||
|
Loading…
x
Reference in New Issue
Block a user