javascript - Ember.js - 路由忽略作为哈希传入的查询参数?
问题描述
我正在构建一条用于接收多个查询参数的路由,其中一个是哈希:
http://www.test.com/foo/bar?first_name=Johnny&hashparam[][foo]=bar
控制器:
export default Ember.Controller.extend({
queryParams: ["first_name", "hashparam"]
});
路线:
export default Ember.Route.extend({
model(params) {
console.log(params.first_name);
console.log(JSON.stringify(params.hashparam));
}
});
对于上面的示例请求,“Johnny”成功登录到控制台,但第二个记录“未定义”。我调试了代码,发现其中params
包含一个键,hashparam
但它的值是undefined
. 我不知道为什么,因为据我所知,上面的请求使用正确的格式来传递哈希键和值。我还在beforeModel
路由中添加了一个钩子,这样我就可以调查传入的内容Transition
,我看到其中queryParams
包含一个名为hashparam[][foo]
value的键'bar'
。
这里有什么问题?难道我做错了什么?
解决方案
您没有提供 的密钥hashparam
,您提供的是 的密钥hashparam[][foo]
。
推荐阅读
- angular - 如何在 Angular 中将数据保存为 Firestore 时间戳对象
- python - Python venv(虚拟环境)使用错误的 Python 版本
- flutter - Flutter 如何检查 Sliver AppBar 是展开还是折叠?
- react-navigation - 抽屉不再按手势打开(升级到 react-navigation 3)
- mysql - 针对 MySQL 服务的 Azure 数据库运行 mysqltuner.pl
- python - Python MQTT 发布 JSONified Numpy 数组
- javascript - 没有数据库的图片喜欢
- java - 什么相当于 .replaceSecond 或 .replaceThird?
- r - 无法在闪亮的服务器 pro 上创建身份验证
- java - 将 String 转换为“YYYY”格式的 java.sql.Date 对象