Мне интересно получить свойства всех элементов dbId. Для этого я просто перебираю свой массив dbIds и использую функцию getProperties
, предоставляемую Forge Viewer.
someFunction() {
const instanceTree = this.viewer.model.getData().instanceTree;
const allDbIds = Object.keys(instanceTree.nodeAccess.dbIdToIndex);
console.log('all DbIds');
console.log(allDbIds);
// This will give the correct Properties
// this.viewer.getProperties(5, (result) => {
// console.log(result)
// })
allDbIds.forEach((dbId) => {
this.viewer.getProperties(dbId, (result) => {
console.log('result:');
console.log(result);
}, (err) => {
console.log('err');
console.log(err);
});
});
}
Когда я напрямую обращаюсь к определенному dbId, я получаю правильный массив свойств. Однако при просмотре всех dbId и вызове функции getProperties
только первые два dbId возвращают свойства, а все остальные возвращают только пустые массивы. Вдобавок первые два массива слишком велики и, кажется, содержат другие свойства. -> Ссылка на вывод консоли
Кто-нибудь знает, что я здесь делаю не так? Уже спасибо!