1234567891011121314151617181920212223242526272829303132333435363738394041 |
- // commpents/picker/index.js
- Component({
- /**
- * 组件的属性列表
- */
- properties: {
- label: { type: String },
- model: { type: String },
- columns: { type: Array },
- valueKey: { type: String, value: 'value' },
- labelKey: { type: String, value: 'label' }
- },
- /**
- * 组件的初始数据
- */
- data: {
- text: '请选择',
- show: false,
- },
- /**
- * 组件的方法列表
- */
- methods: {
- onChange(event) {
- const obj = event?.detail?.value;
- const label = obj[this.properties.labelKey]
- const value = obj[this.properties.valueKey]
- this.setData({ text: label })
- this.triggerEvent('selected', { value, model: this.properties.model })
- this.toClose();
- },
- toOpen() {
- this.setData({ show: true })
- },
- toClose() {
- this.setData({ show: false })
- }
- }
- })
|