У меня есть следующее сообщение protobuf:
syntax = "proto3";
message MyMessage {
string id = 1;
map<string, Any> attributeChanges = 2;
}
В машинописном тексте я пытаюсь установить записи карты сообщения protobuf на основе машинописной карты, которая выглядит следующим образом.
type Nullable<T> = T | undefined | null;
export interface IAuditChanges {
currentValue: Nullable<string>;
previousValue: Nullable<string>;
fields?: Map<string, IAuditChanges>
}
Я пытаюсь просмотреть записи в объекте карты и таким образом установить записи карты.
var attributesMap = message.getAttributechangesMap();
for (let key of Array.from(mappedChanges.keys())) {
const mapEntry: any = mappedChanges.get(key);
attributesMap.set(key, mapEntry);
}
Я получаю сообщение об ошибке TypeError: b.toArray не является функцией. Любая идея, как я могу преобразовать / сериализовать / упаковать каждую запись карты машинописного текста, чтобы я установил ее в protobuf? Я безуспешно искал в нескольких местах примеры.
https://developers.google.com/protocol-buffers/docs/proto3#any https://developers.google.com/protocol-buffers/docs/proto3#maps
Спасибо.