百度地址逆解析,修改vue的数据后没有对dom进行重新渲染

发布于 2022-09-11 22:47:37 字数 1096 浏览 14 评论 0

通过后台范围的经纬度,调用百度的逆解析接口获取到地理位置名称。但解析完成之后无法修改dom的值,需要怎么操作?想请教一下了解的大佬!

先上代码

//地址逆解析
var geoc = new BMap.Geocoder();                     //百度的方法
var pt = new BMap.Point(data.Lng, data.Lat);        //传入后台的经纬度
geoc.getLocation(pt, function (rs) {
  var addComp = rs.addressComponents;
  var area = addComp.province +  addComp.city + addComp.district + addComp.street + addComp.streetNumber;                                    //解析出地址
  _this.pointData.Area = area                        //保存数据
  console.log(_this.pointData.Area,1);               //打印
});
console.log(_this.pointData.Area,2);

data中的属性声明

 pointData: {
  LastTime: null,
  Speed: null,
  Lat: null,
  Lng: null,
  Area: null,
},

DOM的数据绑定

<div>定位时间: {{pointData.LastTime | moment("YYYY年MM月DD日")}}</div>
<div>定位速率:{{pointData.Speed}}KM/小时</div>
<div>位置:{{pointData.Area}}</div>

截图

clipboard.png

麻烦大佬抽空解答,万分感谢!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

我喜欢麦丽素 2022-09-18 22:47:37

这行代码改写下

_this.pointData.Area = area

// 修改为下面
_this.pointData = {
   ..._this.pointData,
   Area:area
}
森末i 2022-09-18 22:47:37

pointData对象是引用类型,修改后引用的地址没变,vue检测不到变化.用this.$set(obj, key, value).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文