Я генерирую серию элементов HTML из метаданных, и мне интересно, есть ли способ применить пользовательский фильтр к этим элементам. Для этого примера это элемент ввода:
var elem = document.createElement('input');
elem.id = "input1";
elem.setAttribute('ng-model', 'results.val');
elem.innerHTML = '{{ ' + results.val + ' | currency }}';
Затем в коде он компилируется:
$compile(elem)(scope)
При использовании этой схемы, когда results.val равен 50, элемент ввода отображает только 50 на странице. Однако, если я смотрю на элемент в консоли браузера, я вижу примененный фильтр:
<input id='input1'>$50.00</input>
Мне кажется, что я на правильном пути, но я неправильно настраиваю вещи. Предполагая, что это возможно, кто-нибудь может увидеть, где я иду не так?
Вот пример того, как выглядят метаданные, используемые для генерации элементов:
[{
field: "ExampleOne",
datatype: "enum",
type: "select",
description: "exampleOneType",
format: "",
enum: [
0: "option1"
1: "option2"
2: "option3"
]
},
{
field: "ExampleTwo",
datatype: "input",
type: "text",
description: "exampleTwoType",
format: "$"
}]