我正在尝试为我的有角度的网站设置推荐系统。我的网站目前是可通过localhost:4200访问的一个组件。我希望用户能够在访问网站时使用推荐代码,所以请考虑使用“ localhost:4200 / r / h7Gt4p”。
当有人导航到带有引荐标签的URL时,如何获取我的角度页面以加载主要组件中的内容。另外,我该如何从打字稿文件中的URL中获取引用参数?
我非常感谢您提供的所有帮助。谢谢!
答案 0 :(得分:2)
我建议如下创建一个新的ReferralComponent
:
@Component({
selector: 'app-referral',
templateUrl: './referral.component.html',
styleUrls: ['./referral.component.css']
})
export class ReferralComponent implements OnInit {
constructor(private route: ActivatedRoute, private router: Router) { }
ngOnInit() {
const code = this.route.snapshot.paramMap.get('code');
// Process your code here. Then redirect
this.router.navigate(['']);
}
}
然后为您的应用配置路由:
const routes: Routes = [
{
path: 'r/:code',
component: ReferralComponent
},
{
path: '',
redirectTo: 'home',
pathMatch: 'full'
},
{
path: 'home',
component: HelloComponent
}
]
在此处查找正在运行的示例:https://angular-app-initial-route.stackblitz.io/r/h7Gt4p
打开浏览器的控制台以查看捕获的代码。希望对您有所帮助!
答案 1 :(得分:1)
首先,您应该设置一个新的路由路径,更多有关此内容(here)。我会推荐类似的东西
{ path: 'r/:refId', component: ReferralComponent }
这还需要您创建一个ReferralComponent,从中可以处理ID。使用组件内部的路由器,如果我没有记错的话,可以使用router.url [0]从URL中获取参数。不过,我可能会误解了您的问题,如果是这样,请更具体一些,我会尝试提供更多帮助。