vux
vux copied to clipboard
[Bug Report] popup-picker的show-name引发的问题
VUX version
2.9.4
OS/Browsers version
MacOS10.14 / Safari12.0.3
Vue version
2.6.10
Code
<template>
<div>
<popup-picker :data="periodList" v-model="term1" :show-name="true" />
</div>
</template>
<script>
function getPeriodList() {
let year = new Date().getFullYear();
let ret = [];
for (let i = 10; i > 0; i--) {
ret.push({ name: `${year - i}级`, value: String(year - 1) });
}
for (let i = 0; i < 10; i ) {
ret.push({ name: `${year i}级`, value: String(year 1) });
}
return [ret];
}
import {
XButton,
Cell,
Group,
XInput,
PopupPicker,
Picker,
Selector
} from "vux";
export default {
components: {
XButton,
Cell,
Group,
XInput,
PopupPicker,
Picker,
Selector
},
data() {
return {
term1: ['2019'],
loading: false,
periodList: getPeriodList()
};
},
methods: {
},
mounted(){
}
};
</script>
Steps to reproduce
页面初始化即可重现
What is Expected?
页面初始化的时候应该正确显示 2019级
What is actually happening?
页面初始化的时候应该正确显示 2019级, 但是未显示。 如果将periodList属性使用静态值,而不是使用函数初始化选择数据,则可以正常显示。 又或者将show-name属性设置为false(或者去掉),也能够正常显示, 但是一般的应用场景都是显示名称,而不是显示值。
追加说明: 当设置show-name为false后,选择数据后不能正常的将选择项显示到输入框中。
我也遇到你的问题了,我觉得是因为在加载periodList时候,dom还没有加载好,所以我就在mounted里调用的动态的periodList