han*_*ars 1 ember.js ember.js-3
我正在使用Ember 3,并且在使用带有动态网段的路由器服务时遇到问题。在我的组件中,transitionTo单击时将路由器服务用于子路由,但出现此错误:
错误:传递的上下文对象多于路由的动态段:data.images.image
这是在组件js中,在这里我使用transitionTo并为一个动态段传递一个参数:
router: service(),
actions: {
navToSubpage() {
// this.image is a single Ember Data record/object
this.router.transitionTo('data.images.image', this.image)
}
},
Run Code Online (Sandbox Code Playgroud)
这是从我的路由器发出的,该路由器具有带有一个动态网段的嵌套路由:
Router.map(function() {
this.route('data', function() {
this.route('images', function() {
this.route('image', {path: '/image_id'});
});
});
});
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?在这种情况下,该错误对我而言没有任何意义。
我在路由器中错过了:以前image_id。因此,路由器无法识别image_id为动态网段,因此我transitionTo被解释为参数太多(从1到0)。它与路由器服务无关。
这是正确的路由器:
Router.map(function() {
this.route('data', function() {
this.route('images', function() {
this.route('image', {path: '/:image_id'});
});
});
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
305 次 |
| 最近记录: |