ember.js 是否将emberjs查询参数与子路由“transitionTo”一起使用?

sc4hvdpw  于 2022-11-05  发布在  其他
关注(0)|答案(1)|浏览(148)

我正在尝试“transitionTo”当前路由的子路由,但似乎被忽略了-没有错误,只是没有发生。

路由器.js

this.route('produce', function() {
    this.route('download-form');
    this.route('download-form-new', {path: '/:prlid_for_form/:prrefnum_for_form/download-form'});   
});

路线/产品

从“生产”路线来看,这与您所期望的一样,

this.transitionTo('produce.download-form');

...即当前路径变为“生成/下载表单”,...但如果我将其替换为...

this.transitionTo('produce.download-form-new', { queryParams: { prlid_for_form: "99", prrefnum_for_form: 'ABC'} });

...执行时不会出错,但不会发生转换。
这是在Ember 3.8中。

b0zn9rqh

b0zn9rqh1#

router部分看起来不错。但是,在调用transtionTo API时存在一个小问题。prlid_for_formprrefnum_for_form这两个实体**不是查询参数,而是动态段。**因此,应按如下方式调用transitionTo API:

this.transitionTo('produce.download-form-new', 99, 'ABC');

因此,值99将被Map到第一个动态段prlid_for_form,而后面的值ABC将被Map到prrefnum_for_form
有关详细信息,请参阅transitionTo的API文档

相关问题