可以参考下
title:题目标题
name:题目的字段名
type:题目类型,是下拉选择还是范围选择还是直接文字填写,循环渲染的时候根据这个判断不同题目类型选择不同的组件
data:题目数据,如范围选择需要一个开始结束、下拉选择需要一个可供选择的数据
value:题目的值,用户所选或所填的值,可能是字符串或者范围数组。
题目数据list
[
{
title: '面积选择'
name: 'area',
type: 'area',
data: [0,300],
value: []
},
{
title: '所在城市',
name: 'city',
type: 'select',
data: [
{
label: '北京',
value: '110000'
}
]
value: ''
},
{
title: '具体位置',
name: 'position'
type: 'input',
value: ''
}
]
渲染数据
-
{{index}}.{{ item.title}}
获取所选数据
let ajaxSendData = {}//ajax请求所要发的数据,就是用户已经选择的数据集合
//大概长这样
//{
// area: [0, 100],
// city: '110000',
// position: '北京某地铁旁'
//}
for(let i = 0; i < list.length; i++) {
ajaxSendData[list[i].name] = list[i].value
}