解决方案:一.通过获取到经纬度,将值传入到后台视口,通过对应的查询代码段查出附近的门店服务
二.详细步骤以及截图说明如下
1.将信息结构图中所需要的 距离字段数据类型改成“地图坐标”,
2,存入格式:在这里我用的是[(纬度),(经度)],示例:[ -71.34, 41.12 ]
3.在页面上添加启用百度地图元素;
4,继续添加一个获取地理位置信息元素
5,在添加的获取地理位置信息上点击右键→逻辑→数据绑定→属性绑定,绑定参数为{"data-x-latitude":wd,"data-x-longitude":jd,"position.timeout":clear,"position.error":error},经纬度对应jd,wd,绑定详细信息可参考文档 http://www.wware.org/wide/setup.html#?content=/v/wide/setup/element/positioning.html
6,然后点击逻辑,当某个元素:当前元素→发生某事:其他事件→额外参数写position.error,→则某元素:当前元素→产生某效果:绑定数据编程→额外参数点击高级编辑,在逻辑代码中写_vm.clear("clear");_vm.error("get");然后保存( 表示 当获取地理位置失败时重新获取地理位置)
7.重复步骤6,将 position.error替换成position.timeout,其余都一样,
8.在页面同步数据元素中,需要提交页面数据层变量填写步骤5中绑定的参数jd,wd
9.这个时候可以开启调试模式,在浏览器console中输入$.wwclass.vm();可以查看获取到当前位置的经纬度
10.在视口中,将提交数据层变量的jd和wd做为输入参数, 提交数据方式暂时设为"post"(此方式需依据页面传参的方式);,数据类型为字符串
11. 在查询代码段中:插入"标准查询"->"结构化查询"->"地理位置查询":设置中心坐标:来自于您原先设置的输入参数:wd(纬度)和jd(经度)以及上限和下限
12、上述查询代码段返回的结果集中会自动生成一个距离字段(XXX_distance),目前是以米为单位,页面可绑定此字段进行距离显示
提示:如果有400报错请清除数据库然后更新信息结构图