ember.js - Ember-models-table 插件在尝试使用“routeName”属性时抛出 ember 警告错误
问题描述
我正在使用 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"
},
解决方案
如果您查看此插件的示例应用程序,您将看到以下路由语法:
{
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
...
}}
routeName
不应包括 id 段。
将鼠标悬停在创建的锚标记上以查看它通向的位置,并进行调整,直到它与应该去的位置匹配。只有当有有效的链接路由时才会呈现。路径看起来可能是相对的,所以如果您已经在users
路线上,您可能只需要user
为routeName
.
我通过在插件代码库中搜索routeName
然后使用与{{link-to}}
帮助程序在 Ember 中使用的相同格式进行尝试来解决这个问题。
PS这是文档中缺少的一些信息,所以如果这个插件可以帮助你,请考虑制作一个 PR 来帮助其他人。
推荐阅读
- python - Python Asyncio 脚本未完成
- java - ArrayList 的通用实现与没有通用的旧实现之间的区别
- macos - Ionic 无法在 macos 12 (Monterey) 中构建
- next.js - NextJS 在服务器上返回 _error 页面,但在客户端返回登录页面?
- css - GTM - CSS 元素
- c# - 使用 WordPressPCL 库 c# 通过 API 读写自定义 wordpress 帖子
- excel - 为什么 WorkSheet_Change 事件不适用于多行
- javascript - HTML 将复选框分配给已定义的表单操作
- javascript - 逐渐使表单出现问题“名称=''的无效表单控件不可聚焦”
- bash - 在 Windows 10 的 makefile 中为 sqlcmd 使用 powershell 命令