1. data是做什么的
vue中的data会被vue实例所监听,可以到底动态绑定到模板的效果
2. 存放变量的考量
你可以把你不需要监听的数据 Object.freeze 一下再放data字段里,vue 会跳过监听这些对象(vue文档有说明),可以节省很多性能。
对于常量可以不放在data里面。
地图实例这些的话最好不要放 data 里,如你所言会有不可避免的 getter/setter,但 Object.freeze 也可能会导致对实例本身的一些操作失效。
数据放 script 标签还是 data 对象里,取决于你模板代码是否直接引用了这些数据,引用了就放 data 对象里。
参考
https://segmentfault.com/q/1010000022110706/a-1020000022111192?sort=created