Получить значение из объекта json в html

Как я могу показать только значение 100 в div ниже?

<div> {{uploadProgress | async | json}} </div>

Текущее отображаемое значение:

[ { "filename": "Mailman-Linux.jpg", "progress": 100 } ]

Ниже моего интерфейса из файла .ts:

interface IUploadProgress {
  filename: string;
  progress: number;
}

А как насчет <div> {{uploadProgress.progress}} </div>?

veben 13.12.2018 16:28

нет, когда я это делаю, ничего не отображается, также прогресс недоступен для uploadProgress в intellisense в машинописном тексте

DarkW1nter 13.12.2018 16:37
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Введение в CSS
Введение в CSS
CSS является неотъемлемой частью трех основных составляющих front-end веб-разработки.
Как выровнять Div по центру?
Как выровнять Div по центру?
Чтобы выровнять элемент <div>по горизонтали и вертикали с помощью CSS, можно использовать комбинацию свойств и значений CSS. Вот несколько методов,...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Travel Booking Angular Template один из лучших Travel & Tour booking template in the world. 30+ валидированных HTML5 страниц, которые помогут...
0
2
95
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Этот uploadProgress | async получает объекты потока.

После AsyncPipe он, вероятно, распечатает [Object object]

Поскольку теперь это объект, вы можете просто получить атрибут прогресса, как и любой другой объект.

Результат должен выглядеть так:

  <div> {{(uploadProgress | async).progress}} </div>

Кроме того, если наблюдаемое у вас не является BehaviourSubject, вы можете добавить безопасная навигация с ? после Asyncpipe, чтобы предотвратить ошибки undefined:

  <div> {{(uploadProgress | async)?.progress}} </div>

Как правильно упоминает ShamPooSham, похоже, что результатом является массив. Поэтому ответ должен выглядеть так:

   <div> {{(uploadProgress | async)[0]?.progress}} </div>

Кажется, что результатом является массив, поэтому, если OP просто хочет первое значение, вы должны добавить 0-индекс

ShamPooSham 13.12.2018 16:44

извините, но {{(uploadProgress | async) .progress} с или без? все еще ничего не показывает

DarkW1nter 13.12.2018 16:45

теперь возвращает эту ошибку: Ошибка синтаксического анализатора: условное выражение (uploadProgress | async)? [0] .progress требует наличия всех трех выражений в конце выражения [{{(uploadProgress | async)? [0] .progress}}]

DarkW1nter 13.12.2018 16:54

DarkW1nter хорошо, мой плохой? должен быть после индекса

Flyii 13.12.2018 17:00

Другие вопросы по теме