Naj*_*qib 7 javascript deep-linking hybrid-mobile-app ionic-framework angular
我正在 ionic 4 应用程序中实现 Deeplink。应用程序启动但深层链接插件总是返回false;
app.routing.ts:
{
path: 'viewdiary/:id/public',
loadChildren: () => import('./pages/viewdiary/viewdiary.module').then( m => m.ViewdiaryPageModule)
},
Run Code Online (Sandbox Code Playgroud)
app.component.ts:
setupDeepLink(){
this.deeplinks.route({
'/viewdiary/:id/public': 'viewdiary/:id/public'
}).subscribe((match)=>{
console.log('deeplink matched', match);
const internalPath = `${match.$route}/${match.$args['id']}/${match.$route}`;
console.log(internalPath);
this.zone.run(()=>{
this.general.goToPage(internalPath);
});
},
nomatch=>{
// nomatch.$link - the full link data
console.error("Got a deeplink that didn't match", nomatch);
})
};
Run Code Online (Sandbox Code Playgroud)
我的公共日记页面链接'https://www.example.com/diary/12542/public';
看起来像是路由问题,尝试了很多更改名称但没有任何效果。我不知道出了什么问题。
在 Stackoverflow 上的另一个答案的帮助下弄清楚了如何实现它
import { Platform, NavController } from '@ionic/angular';
constructor(public navCtrl: NavController){}
this.deeplinks.routeWithNavController(this.nav, {
'/viewdiary/:diary/:id/:public': 'viewdiary'
}).subscribe((match) => {
console.log('success' + JSON.stringify(match));
}, (noMatch) => {
console.log('error' + JSON.stringify(noMatch));
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
644 次 |
| 最近记录: |