原因: 引入mock.js的原因
分析:
ve-map 获取地图数据的时候使用了一个简单的 ajax 请求,然而项目中的 mockjs 把 xhr 封装了一层,应该触发的 onload 没有触发出来,所以这个 promise 一直在 pending 状态,组件的渲染流程没有继续下去,所以就没有正常显示出来。
有两种方案可以解决这个问题:
- 去掉 mockjs ,使用别的方法来处理测试数据。
- 使用 mapOrigin 属性,预先在项目中引入地图 json 并通过 mapOrigin 传递给组件,这样就不需要通过 ajax 的方式引入地图了。
网友评论