2013-12-07 2 views
6

У меня есть компонент MyComp, и я хотел бы передать ему функцию в качестве параметра. Точнее я хотел бы сделать что-то вроде этого:В Dart Angular, как передать функции компоненту

файл дротик компонент:

@NgComponent(
     selector: 'mycomp', 
     publishAs: 'ctrl', 
     map: const { 
      'myfunc' :'=> myfunc' 
     } 
    ) 
class MyComponent { 
    Function myfunc; 

    .... 
    myfunc(); 
} 

HTML:

<mycomp myfunc="ctrl.myfunc"></button-list> 

Проблема заключается в том, что MyFunc является нулем в компоненте , Я что-то пропустил? Как я могу это сделать?

ответ

7

Используйте '&' привязать функцию к полю:

@NgComponent(
    selector: 'mycomp', 
    publishAs: 'ctrl', 
    map: const { 
     'myfunc' :'&myfunc' 
    } 
) 
class MyComponent { 
    Function myfunc; 

    .... 
    myfunc(); 
} 

http://ci.angularjs.org/view/Dart/job/angular.dart-master/javadoc/angular.core/NgComponent.html#map

+1

Великого. Чтобы передать параметр, там есть что-то более простое, чем myfunc ({'\ $ myparam': xyz} с html ? – odwl

+1

Хм, вы хотите передать параметр mycomp при связывании функции или с mycomp при вызове myfunc? – Ozan

+0

Я хочу передать параметр при вызове myfunc. – odwl

6

Предпочтительным способом в AngularDart является использование аннотаций

@NgCallback('myfunc') Function myFunc; 
Смежные вопросы