使用ember-models-table在我的应用程序中显示表格。该表非常适合排序,分页等,但我尝试根据id从特定行路由到不同的页面。它在其示例中提到使用'routeName' 但是当我使用它时会抛出以下错误:
“断言失败:在调用warn
时,您必须提供options
哈希作为第三个参数。options
应包含id
属性。”
我的.js编码:
columns:[
{
"propertyName": "firstName",
"title":"First Name",
"routeName":"/#/profile/_id"
},
等等
感谢您的帮助。
更新:将ember更新为ember 3.1.2后错误消失了 但有一个警告,它没有按预期正常运作,我哪里出错?
我的代码:
columns:[
{
"propertyName": "firstName",
"title":"First Name",
"routeName":"profile"
},
答案 0 :(得分:5)
如果您查看此插件的示例应用,您将看到该路线的以下语法:
git config --global core.autocrlf false
这大致对应于{
propertyName: 'id',
routeName: 'users.user'
},
之类的路线。所以,如果这是你的路由器:
users/1
以下是专栏:
Router.map(function() {
this.route('users', function() {
this.route('user', { path: '/users/:user_id' });
});
});
这是模板:
columns: [
{
"propertyName": "something",
"routeName": "users.user"
},
{
"propertyName": "id",
"routeName": "users.user"
}
]
{{models-table
data=model
columns=columns
...
}}
不应包含ID段。
将鼠标悬停在创建的锚标记上以查看它所指向的位置,并进行调整,直到它与应该去的位置匹配。它只会在有链接的有效路径时呈现。路径似乎可能是相对的,因此如果您已经在routeName
路线上,则可能只需要为users
指定user
。
我通过搜索routeName
的插件代码库然后尝试使用routeName
助手在Ember中使用的相同格式来解决这个问题。
P.S。这是文档中缺少的一些信息,所以如果这个插件正在帮助你,请考虑制作PR以帮助其他人。