ASEMiniProgram/dist/radio-group/index.js

39 lines
954 B
JavaScript
Raw Normal View History

2021-03-20 17:48:56 +00:00
Component({
externalClasses: ['i-class'],
relations: {
'../radio/index': {
type: 'child',
linked() {
this.changeCurrent();
},
linkChanged() {
this.changeCurrent();
},
unlinked() {
this.changeCurrent();
}
}
},
properties: {
current: {
type: String,
value: '',
observer: 'changeCurrent'
},
},
methods: {
changeCurrent(val = this.data.current) {
let items = this.getRelationNodes('../radio/index');
const len = items.length;
if (len > 0) {
items.forEach(item => {
item.changeCurrent(val === item.data.value);
});
}
},
emitEvent(current) {
this.triggerEvent('change', current);
}
}
});