微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

angularjs – 将函数从angular1传递到降级的angular2分量

问题:

我无法获得成功传递给降级的Angular 2组件的功能.我已经尝试了几乎所有我认为可以传递的方法,但我只能通过字符串插值传递字符串 – >一些属性= {{controller.property}}.以下是我尝试过的一些事情(是的,我知道其中一些没有意义……)

some-function="controller.function";
some-function="{{controller.function}}";  //<-- works for data,not functions
[some-function]="{{controller.function}}";
[someFunction]="controller.function";
[(someFunction)]="controller.function";

建立:

这是我现有的设置,它适用于数据,但不适用于功能

Angular 1用法

<my-component data-input-name="{{controller.name}}"></my-component>

升级/降级适配器

angular.module('myModule').directive('myComponent',downgradeComponent({
      component: MyComponent,inputs: ['inputName']
    }) as angular.IDirectiveFactory);

Angular 2定义

@Component({
  selector: 'my-component',templateUrl: './my.component.html',styleUrls: ['./my.component.css']
})
export class MyComponent implements OnInit {

  @input() inputName: any;

  constructor() {}
}

Angular docs甚至展示了如何设置,但他们没有给出任何实际使用的例子.
我错过了一些东西还是可以做到这一点?

解决方法

像这样使用AngularJS kebab案例,似乎对我有用:

<my-component [data-input-name]="controller.name">
</my-component>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐