2016-10-19 3 views
0

У меня есть часть кода углового2 + pouchdb, который запрашивает облачные и получает документы со своими вложениями. Журнал консоли возвращенного документа выглядит нижеpouchdb alldocs получить приложение nosql

{"type":"some_doc"},"_attachments":{"logo.png":{"digest":"md5-UK7aKiZSqQ6Xljz4wmUMkw==","content_type":"image/png","data":"iVBO....CCGE 

Усеченного данные ...

Я сейчас пытаюсь отобразить изображение в списке элементов с

<img [src]=doc.some.path> 

Задача, с которой я сталкиваюсь, заключается в том, что я не могу динамически достичь элемента данных, чтобы извлечь blob и вызвать

var url = URL.createObjectURL(blob); 

Все сообщения, которые я нашел, либо очень старые, либо о alldocs, не поддерживающие вложение, или hardcoding blobs в образце кода.

Пожалуйста, помогите.

Thanks, Elvis.

ответ

0

Ответ на ваш вопрос наилучшим образом выражен here. В итоге:

  • вызова функции PouchDB db.getAttachment, чтобы вернуть изображение как Blob объект
  • вызова URL.createObjectURL(blob) превратить каплю в URL расходного с помощью тега изображения
  • прикрепить URL в тег imgsrc атрибут
+0

Я до сих пор сталкивался с этим, проблема заключается в том, что мне нужно будет снова вызвать вызов db.getAttachment в базу данных для каждой записи, тогда как я уже сделал db.alldocs ({вложения = true}) и выбрали все вложения s для всех пользователей. Вопрос о повторном использовании blob в json - вопрос. –

+0

Или иначе, поскольку db.getAttachment требует два параметра, а именно: _id документа и имя_файла, как я могу определить динамически названное имя файла вложения в базе данных? –

Смежные вопросы