javascript - meteor 与铁路路径

标签 javascript meteor iron-router

当我单击用户名时,我希望链接转到他们的个人资料页面。我正在使用 Meteor 和铁路由器。以下是定义的路线:

Router.route('/', { name: 'JobsList'}); //homepage with all users

//this is where the user's profile is located and works:
Router.route('/company/:_id/', {
 name: 'CompanyPage',
 data: function() { return Meteor.users.findOne(this.params._id); }
});

//this page shows all users with url that works:
Router.route('/companies/', {name: 'CompaniesList'});

当我将鼠标悬停在主页上的用户名称上时,我得到了错误的链接,但当我将其名称悬停在“/companies/”页面上时,我得到了正确的链接。为了生成链接,我使用 pathFor "CompanyPage"

我是否遗漏了一些导致主页网址不正确的内容?你需要看什么js或html?请告诉我,我将编辑这篇文章。谢谢。

最佳答案

为了获得正确的链接,您必须使用以下语法:

{{pathFor 'CompanyPage' _id=userId }}

其中 this._id 应该是用户的 ID

发生了什么:

对于带有某种附加标识符的路由,Iron Router 会在 this 中查找相同的标识符名称。如果将 this 设置为正确的数据上下文,那么它会起作用,但是对于您的 / 路由,您没有定义数据上下文。在 CompanyPage 上,数据上下文被定义给正确的用户。

关于javascript - meteor 与铁路路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30467393/

相关文章:

javascript - 在调用onclick()函数的函数中传递按钮value属性值,动态创建按钮

javascript - 如何在 jquery 中加载页面时禁用所有复选框?

meteor - 帐户输入 meteor 布局

javascript - 在 Meteor 中集成 p5.sound.js : p5. AudioIn() 不是构造函数

Javascript函数执行两次,Meteor js

meteor - 如何重新加载当前的熨斗 :router route?

javascript - 使用 useEffect 填充多个下拉数据

javascript - 带有 CSS 的警告框

login - meteor 帐户恢复 token "Remember Me"

android - Meteor 应用程序在 Android 上的 chrome 浏览器中打开 URL