2

我对使用 Kylo 和 UI 结构的方式有疑问。

根据网站http://kylo.readthedocs.io/en/v0.8.3/developer-guides/KyloDeveloperGuide.html?highlight=angular2它说:

Kylo UI 的大部分依赖于 AngularJS 和 AngularJS Material,但少数部分已经升级到 Angular 2 和 Covalent。新插件应该用 Typescript 编写并使用 Angular 2 以实现未来的兼容性。

它说新插件应该用 angular2 和 typescript 编写,但所有示例和核心组件都是用 AngularJS 编写的。

一个例子是这个:https ://github.com/Teradata/kylo/tree/master/samples/plugins/example-module/example-module-ui

我想知道该模块的 Typescript 和 Angular2 替代方案,包括路由,是否有任何实时示例?

4

1 回答 1

1

我已经测试过,如果将代码直接添加到 kylo-ui-app 项目中,Angular 2 确实可以工作,但我认为 Kylo 的插件系统现在不支持 Angular 2。

与标准 Angular 2 的唯一区别是 Kylo 使用 UI-Router 而不是 Angular Router,但语法非常相似。从记忆中,我认为这些是我使用的步骤:

1) 向 routes.js 添加新路由:

{
  name: 'contacts.**',
  url: '/contacts',
  loadChildren: './contacts/contacts.module#ContactsModule'
}

2)将子状态添加到您的模块中:

@NgModule({
  imports: [ UIRouterModule.forChild({ states: CONTACTS_STATES }), /* ... and any other modules */ ],
  declarations: [ ContactComponent, /* ... and any other components */ ],
  providers: [ ContactsDataService ],
})
export class ContactsModule { }

3)应在views.content下指定每个状态的组件:

{
  name: 'contacts',
  url: '/contacts',
  views: {
    "content": {
      component: ContactsComponent,
    }
  }
}
于 2017-10-11T20:36:24.360 回答