Я хотел бы, чтобы input
представлял список примитивных (строковых, числовых) значений, чтобы вы могли вводить их как значения, разделенные запятыми, но обновлять модель как массив:
"Transforms": [
{
"Fn": "TheFunctionName",
"Args": [ "arg1", 2, "arg3" ]
},
{
"Fn": "AnotherMethod",
"Args": [ 4.678 ]
},
]
Будет управляться с:
{{#each Transforms:i}}
<li>
<input value="{{Fn}}" placeholder="Function Name" />
<input value="{{implode(Args)}}" placeholder="Function Arguments" />
</li>
{{/each}}
и отобразит что-то вроде:
* [ TheFunctionName ] [ "arg1", 2, "arg3" ]
* [ AnotherMethod ] [ 4.678 ]
В основном для того, чтобы мне не нужно было выяснять хороший пользовательский интерфейс для динамического добавления / удаления входных аргументов (например, привязка при определенных нажатиях клавиш, использование кнопок для добавления / удаления полей и т. Д.).
Я мог бы использовать свойство «заполнитель» для привязки данных и, вероятно, наблюдать его для обновления фактического свойства, но тогда мне нужно было бы отфильтровать его при «сериализации» базовой модели. Похоже, я мог бы использовать вычисляемые свойства, у которых есть геттер и сеттер, но это из документации не ясно, как это работает с вложенными свойствами в списке (т.е. в data
есть много записей со списком Transforms
).