有没有办法找出它从哪条路线转换到Ember的当前路线?

时间:2015-08-05 06:44:34

标签: ember.js

我们说我们有3条路线:A,B和C

有可能从A过渡到C.或从B过渡到C.

A -> C
B -> C

在路线C中,我想知道它从哪条路线转换过来。 A或B.是否有一种简单的方法可以找到它?

P.S。我想做的是在从A(或B)转换到C并在路由C的beforeModel挂钩上获取该参数时,添加带路由名称(A或B)的额外参数。

3 个答案:

答案 0 :(得分:0)

您可以通过以下方式设置查询参数: controller / route并在路径中访问它们

beforeModel:function(transition){
   transition.queryParams
}

因此,您可以将查询参数设置为A,并根据A在beforeModel中执行所需操作。对于B

答案 1 :(得分:0)

基于How to get current routeName?

我添加了previousRoute属性。它比使用查询参数更容易。

解决方案:

 App = Ember,Application.create({
      currentPath: '',
      previousPath: null
 });

ApplicationController : Ember.Controller.extend({
  currentPathDidChange: function() {
      App.set('previousPath', App.get('currentPath'));
      App.set('currentPath', this.get('currentPath'));
  }.observes('currentPath')
});

可以使用以下方式访问属性:

App.get('currentPath');
App.get('previousPath');

答案 2 :(得分:0)

在Ember v3.6 中,let colorMatrixFilter = CIFilter.colorMatrix() colorMatrixFilter.inputImage = ciInputImage // no need to load that every time colorMatrixFilter.inputAVector = CIVector(x: 0, y: 0, z: 0, w: 0.5 + opacity) let semiTransparentImage = colorMatrixFilter.outputImage // perform blending 属性已添加到from类中。此属性是一个Transition对象,表示过渡的起源。对于初始渲染,该值设置为RouteInfo

null

链接到文档:https://api.emberjs.com/ember/3.6/classes/Transition/properties/from?anchor=from