搜索

首页  >  问答  >  正文

javascript - angular2如何给<route-outlet></route-outlet>占位之后需要路由到的组件标签上绑定输入属性?

求解,如题目描述,
想给一个组件传递数据,但这个组件在<route-outlet></route-outlet>的位置显示 并不能直接在routeroutlet标签上添加[XX] = "XX",

看文档好像可以通过 @conponent注解的host字段绑定class和attr,
但当我绑定[输入值]的时候就会报错,

@Component({
  selector: 'app-onlinecourse',
  templateUrl: './onlinecourse.component.html',
  host:{
    class:"test",
    '[test]':"test"
  }
......

  @Input()
  test;
.....
 ngOnChanges() {
      console.log(this.test);
  }
//undifind

报错信息:
Can't bind to 'test' since it isn't a known property of 'app-onlinecourse'.

请输入代码

谢谢

迷茫迷茫2720 天前580

全部回复(1)我来回复

  • 学习ing

    学习ing2017-06-12 09:27:58

    angular的host遵循的是模板语法的绑定的规则,可参考(Template Syntax)[https://angular.io/docs/ts/la...。

    因此,你的host,大概应该如此:

    host: {
        '[class.special]': 'test',
        '[attr.aria-label]': 'true'
    }

    回复
    0
  • 取消回复