Я пытаюсь построить кастомизированный angular канал. Эта труба будет похожа на десятичную трубу.
Я отображаю несколько элементов на экране. Каждый элемент имеет свою цену, и каждый элемент имеет различные десятичные разряды, которые динамически поступают из базы данных Я могу использовать десятичную трубу, но я должен указать десятичное место отдельно для каждого элемента. Итак, в основном я пытаюсь создать канал настройки, который преобразует значение (цену) в собственные десятичные разряды вместо того, чтобы указывать десятичные разряды для каждого элемента.
Я использую два объекта (элемент и десятичные знаки), которые я указал ниже.
'item': {
'itemID': 'id',
'name:' 'itemName'
'feature': 'feature'
'price': 200
}
'decimalPlace': {
'decimals': 2
'itemID': 'id'
}
В настоящее время я пытаюсь сделать так, чтобы я вызывал метод getDecimals (который возвращает объект decimalsPlaces) в конструкторе канала, а затем определяю имя элемента с помощью строковой интерполяции. Пример:
{{ item.price | customisedPipe: {{ item.itemId }} }}
Внутри класса канала я использую функцию find () для сравнения 'item.itemId' и decimalPlace.decimals, если их совпадение, то я преобразовываю значение, чтобы вернуть значение десятичных разрядов.
Таким образом, это работает, но мне сказали не использовать этот способ. Итак, я буду признателен, если кто-то может предложить любое другое решение.
Пожалуйста, дайте мне знать, если этот вопрос не имеет смысла.