问题标签 [routerlink]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
angular - this.router.navigate 代码的等效 [routerLink] 代码应该是什么?
我怎样才能在 [routerLink] 中编写它并且仍然可以传递一个 id?我正在关注此示例以供参考:示例
angular - Angular 2 routerLink 在导航栏中的 ng2-bootstrap 下拉菜单中不起作用
我在导航栏内使用带有下拉菜单的 ng2-bootstrap 导航栏。如果您在下面的代码段中向下看大约一半,*ngIf="userHasPermission()"
您将看到下拉菜单的内容。我发现我必须使用带有 href 值的锚来重新加载整个页面,以便让浏览器导航到请求的 URL。在 selectRecord 函数中,我有同样的问题;router.navigate 和 router.navigateByURL 根本什么都不做。
我检查了以下内容:
我在导航栏中正确导入 RouterModule 和其他 routerLink 工作正常。
我没有尝试将路由器链接到当前活动路径
具有讽刺意味的是,具有下拉属性的 li 上的 routerLink 确实有效。
下拉列表本身显示得很好。选择任何选项都会导致下拉列表消失,但没有任何 routerLink 选项对下拉列表中实际包含的任何内容有任何影响。
这是导航栏标记:
我重新加载整个浏览器的工作正在工作,但是必须做一件可怕的事情来简单地更改正在查看的记录。
angular - Angular 2 为带有多个路由器出口的 URL 添加了斜杠
我有一个有两个出口的应用程序组件:
template: '<router-outlet></router-outlet><router-outlet name="popup"></router-outlet>'
我按照此链接中的示例创建路由和 routerLinks,只要 routerLinks 在应用程序组件内,一切正常。但是,我创建了一个主布局组件,里面有一个菜单,这样我就可以在所有页面上重用它,并使用 loadChildren 来加载里面的相应模块和组件。
问题是当我将弹出出口的 routerLinks 移动到菜单中时,它包含主路由的尾部斜杠,并且生成的 url 不起作用。因此,例如这个 routerLink:
如果它被放置在应用程序组件中,则创建 url 'localhost/mainroute(popup:login)' ,如果它被放置在菜单组件中,则创建 'localhost/mainroute/(popup:login)'。
虽然第一个 url 有效,但第二个 url 产生错误: 错误:无法匹配任何路由:'mainroute'
我不明白为什么它以不同的方式对待这两种情况。我也不明白,即使 url 'localhost/mainroute/'有效,第二个生成的 url 也不会因为尾部斜杠。
有人能帮我吗?
angular - 通过一系列路由器链接构建查询字符串参数
是否可以将路由器链接配置为简单地添加到查询字符串中,以便我们可以通过一系列链接构建查询字符串?
给定网址:
页面上某处的链接类似于:
将链接到:
给定第二个链接:
是否可以制作路线:
而不是覆盖当前的查询字符串?我怀疑通过侦听路由器事件并手动解决它是可能的,但我想知道通过某些配置是否不可能?
angular - Angular2 - 将 routerLink 参数添加到所选表值
我有一个 routerLink 附加到我在 angular2 组件的 HTML 中创建的表中的前导值。单击该表值后,我希望 routerLink 不仅发送到下一个组件,而且还将选择的值带到下一个组件。
当前代码示例
我有链接,所以它正在发送到记录页面,但是如何将名称发送到该组件,以便我可以显示我要显示的特定记录?
angular - Angular 2 路由在 aot 编译构建后不起作用
我正在使用 RouterModule,我的 app.module.ts 中有这个
当我在本地测试时,它工作得很好。/mainMenu/products 将我带到 MainComponent,它包括 ProductsComponent。/targeting 也将我带到 TargetingComponent。
我使用
dist 中生成的文件放在服务器上。该页面会自动重定向到 /mainMenu/products。但是,如果我输入 URL /mainMenu/products 或 /targeting 它不起作用。我得到GET /mainMenu/products" Error (404): "Not found"
或GET /targeting" Error (404): "Not found"
。所以我认为这是因为提前编译而发生的,这是真的吗?我应该在配置中做些什么才能让它工作吗?
我正在使用 npm http-server。
angular-cli - routerLink 在 @angular/cli 中停止工作
我刚刚将我的项目从angular-cli
发布版本更新@angular/cli
。之前一切正常,但升级后,它停止工作。如果我删除routerLink
,那么它工作正常。请帮我解决这个问题。
我正在更新RouterModule
如下。
包.json:
angular - Angular2 [routerLink] 有效,this.router.navigate 似乎使应用程序崩溃
我在使用这样的按钮可以正常工作的 Angular2 应用程序中遇到路由问题:
但是在函数中使用相同的路由失败 - 页面似乎加载了一秒钟,然后应用程序完全刷新并让我回到主/根页面,但控制台上没有错误。
此外,只需在浏览器中输入路径即可导航到该路径,可以很好地加载组件,而不会出现任何错误或重定向。
路由器配置:
@NgModule 配置:
javascript - 格式化 routerLink 参数 url
在我的 Angular 2 应用程序中,我定义了一个路由器链接,例如:
目前,我将 demo.name 设为“example.net/demo/A%20%demo%20%test”。我想将其格式化为“example.net/demo/a-demo-test”以显示在浏览器地址栏中。
任何帮助,将不胜感激。