В компоненте Ember можно определить свойство positionalParams, чтобы параметры переданные как позиционные параметры, становятся доступными как свойства. Например:
let MyComponent = Ember.Component.extend;
MyComponent.reopenClass({
positionalParams: ['name', 'age']
});
при его вызове: {{my-component "John" 38}}
свойство name
имеет значение John
, а свойство de age
имеет значение 38
.
Я хотел бы иметь противоположное поведение, но я не могу найти, возможно ли это. Поведение, которое я ищу, выглядит следующим образом:
Вместо передачи ряда позиционных параметров ({{my-comp param1 param2}}
) я хотел бы передать свойство массива ({{my-comp positionalArguments=myArray}}
), поскольку оно может иметь динамический размер.
Я ищу такое поведение не только у компонентов, но и у хелперов: {{ concat firstName " " lastName }}
должно стать {{ concat positionalArguments=myArray }}
. Помощник должен получить один и тот же массив параметров в качестве первого аргумента в обоих случаях.
MyComponent
использует методreopenClass
для определенияpositionalParams
. так что это относится к классуMyComponent
. Я бы сказал, что динамическое определение positionalParams невозможно. - person Ember Freak   schedule 26.10.2016