// component/checkboxgroup/checkboxgroup.js
|
Component({
|
options: {
|
addGlobalClass: true
|
},
|
/**
|
* 组件的属性列表
|
*/
|
properties: {
|
remarkPlaceholder: {
|
type: String,
|
value: '请输入备注'
|
},
|
options: {
|
type: Array,
|
value: []
|
}
|
},
|
|
/**
|
* 组件的初始数据
|
*/
|
data: {
|
|
},
|
|
/**
|
* 组件的方法列表
|
*/
|
methods: {
|
remarkChange:function(e){
|
const value = e.detail.value
|
const index = e.currentTarget.dataset.index
|
this.setData({
|
[`options[${index}].remark`]: value,
|
[`options[${index}].noValue`]: false,
|
})
|
this.triggerEvent('change', {options: this.data.options})
|
},
|
|
checkboxChange(e) {
|
console.log('checkbox发生change事件,携带value值为:', e.detail.value)
|
|
const options = this.data.options
|
const values = e.detail.value
|
for (let i = 0, lenI = options.length; i < lenI; ++i) {
|
options[i].checked = false
|
|
for (let j = 0, lenJ = values.length; j < lenJ; ++j) {
|
if (options[i].value === values[j]) {
|
options[i].checked = true
|
break
|
}
|
}
|
}
|
|
this.setData({
|
options
|
})
|
|
this.triggerEvent('change', {options: this.data.options})
|
}
|
}
|
})
|