eri*_*rin 3 ionic-framework ionic2 angular2-routing
(前言:我来自C#/ WPF背景,一般来说是网络开发的新手 - 请耐心等待!)
使用Angular 2,我能够像这样定义我的路线:
RouterModule.forChild([
{ path: 'contacts', component: ContactsComponent }
])
Run Code Online (Sandbox Code Playgroud)
然后,在一些html中,我可以使用routerLink语法来引用它:
routerLink='/contacts'
Run Code Online (Sandbox Code Playgroud)
这很好用,最终它允许我用绑定替换字符串,所以我可以在运行时获取路径,允许数据确定导航结构.
现在,我试图在Ionic 2中做类似的事情,但如果有可能,那对我来说并不明显.我已经看到你如何使用[navPush]使用深层链接绑定到页面(就像这个人做的那样:http://plnkr.co/edit/syUH0d6SJd2gAjqaPLwr?p = preview ),但是这需要提前定义页面在想要使用它的组件中的时间.
Ionic的导航结构是否支持此功能?
经过大量的挖掘,我发现了我做错了什么.以下是使用Ionic v2深层链接指向路径的方法:
在app.module.ts导入中添加:
IonicModule.forRoot(MyApp, {}, {
links: [
{ component: ContactsPage, name: 'ContactPageName', segment: 'contacts' }
]
Run Code Online (Sandbox Code Playgroud)
确保还将ContactsPage添加到声明和entryComponents中.
然后,在启动导航的页面的html中,您可以以声明方式使用它,就像这样
navPush="ContactPageName"
Run Code Online (Sandbox Code Playgroud)
请注意,您使用的是直接链接的名称!
在我的例子中,我从json文件中获取了一个项目列表,因此像这样循环遍历它们:
<ion-item *ngFor="let contact of contacts" detail-push>
<button ion-button navPush="{{contact.link}}">Go</button>
</ion-item>
Run Code Online (Sandbox Code Playgroud)
我的json文件包含:
"link": "ContactPageName"
Run Code Online (Sandbox Code Playgroud)
希望能帮助别人!
| 归档时间: |
|
| 查看次数: |
2054 次 |
| 最近记录: |