vue import * as 与直接 import json文件的区别

今天做地图点位的时候,自己去网上下载了一些点位的经纬度坐标,然后引入进行使用,刚开始使用的是import * as 


import * as areaCenter from "../../utils/area-center.json";

然后这么使用的:


export default {
    //import引入的组件需要注入到对象中才能使用
    components: {},
    data() {
        //这里存放数据
        return {
            geoCoordMap: areaCenter,
        }
    }
}

然后直接对后续从接口获取的动态点进行追加:


                this.geoCoordMap[result.data.name] = [
                    result.data.center.lng,
                    result.data.center.lat
                ];

 

看起来好像没啥问题,本地run dev 跑起来测试也没啥问题,正常展示,但是一到生产环境就有问题了,报错

Cannot set property of [object Module] which has only a getter

说这个对象是只有getter方法,不能对其进行赋值。

然后一脸懵逼,最后发现要把import方式改为:


import areaCenter from "../../utils/area-center.json";

这样这个变量才能正常的set,查了下,也没发现对这个json有啥说法,后面有时间再查把,先记录一下,后续查出来了再来编辑。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值