数据处理
<uni-forms-item name="riskclass" label="风险类别" required>
<uni-data-checkbox multiple :localdata="riskclasses" v-model="formData.riskclass" />
</uni-forms-item>
onLoad(e) {
const id = e.id
this.formDataId = id
this.getDetail(id)
this.loadriskclasses()
},
loadriskclasses() {
db.collection('risk-class').limit(500).get().then(res => {
const riskclasses = []
this.riskclasses = res.result.data.map(item => {
riskclasses.push(item.riskclass_id)
return {
value: item.riskclass_id,
text: item.riskclass_name
}
})
}).catch(err => {
uni.showModal({
title: '提示',
content: err.message,
showCancel: false
})
})
}
关键点:
this.riskclasses = res.result.data.map(item => {
riskclasses.push(item.riskclass_id)
return {
value: item.riskclass_id,
text: item.riskclass_name
}
map数组中的数据,riskclass_Id是从数据库中获取到的数据中的riskclass_Id字段,显示文字riskclass_name对应的是类别表的对应显示。
schemo2code生成的代码
直接在数据中配置数据库属性
<uni-data-checkbox :multiple="true" v-model="formData.riskclass" collection="risk-class" field="riskclass_id as value, riskclass_name as text" />
关键点:field中映射的字段中包括riskclass
getDetail(id) {
uni.showLoading({
mask: true
})
db.collection(dbCollectionName).doc(id).field('riskname,detail,method,riskclass').get().then((res) => {
const data = res.result.data[0]
if (data) {
this.formData = data
console.log(data)
}
}).catch((err) => {
uni.showModal({
content: err.message || '请求服务失败',
showCancel: false
})
}).finally(() => {
uni.hideLoading()
})
},