使用地物编辑修改属性的时候出现Uncaught TypeError: e.getProperties is not a function的错误,图中有截图我的参数,请教一下为什么会出现这个问题,是我构造的参数问题还是什么问题?for openlayers的版本是10.0.1
您好,您设置feature的属性方法有误,您这个是直接给feature添加了properties属性方式,底层函数是无法直接获取的。底层函数能获取属性的结构体是如果您要给feature设置属性可以通过pointFeature.setProperties({POP: 1, CAPITAL: 'test'});这种方式
还是不太行鸭有修改的示例吗,我的新增和删除都没有问题,就是修改有这个问题
不行呀,还是“the number of 'fieldNames' and 'fieldValues' are not equal”这个问题,还有一个问题哈,就是只传我自己的属性的话那系统怎么知道应该修改哪一条数据?如果需要传smid的话在什么时候传递?
我的测试结果是ok的
var pointFeature = new ol.Feature(geoms); pointFeature.setProperties(_this.attributesData); pointFeature.setId(_this.updateObj["id"]);
好吧,终于找到问题所在了,需要对pointFeature设置自定义属性参数的同时setId,害难受,非常感谢您的耐心解答