我将 Meteor 与另一个 CMS 一起使用,并正在创建一个包含运行 Meteor 所需的变量的 url(例如http://site.com?a=flash&b=hash)。如何使这些变量可用,并让 Meteor 将其忽略为位置?当我像这样加载 url 时,我的应用程序无法正确加载,大概是因为它认为我正在请求不同的位置。
问问题
1957 次
2 回答
1
除非您使用例如,否则在 Meteor 中使用查询字符串应该没有效果。Meteor Router 根据当前 URL 调用不同的方法。
如果要解析查询字符串,只需使用例如手动解析它。(在咖啡脚本中)
querystring: ->
qs = {}
for pair in window.location.search.replace("?", "").split "&"
[k, v] = pair.split("=")
qs[k] = v
qs
这将返回一个对象,如:
{ "a": "flash", "b": "hash" }
于 2013-01-04T01:54:30.327 回答
1
使用 Iron 路由器,如果 url 中有查询字符串或哈希片段,您可以使用 this.params 对象的查询和哈希属性访问那些。
// given the url: "/post/5?q=s#hashFrag"
Router.route('/post/:_id', function () {
var id = this.params._id;
var query = this.params.query;
// query.q -> "s"
var hash = this.params.hash; // "hashFrag"
});
于 2014-11-26T14:44:24.633 回答