代码之家  ›  专栏  ›  技术社区  ›  ViqMontana

在aurelia store的配置管道步骤中使用@connectto decorator时,状态始终未定义

  •  3
  • ViqMontana  · 技术社区  · 7 年前

    我有一个Aurelia应用程序正在使用 Aurelia Store . 我在使用 @connectTo 装饰在奥雷利亚管道步骤。

    我已将以下步骤添加到配置管道:

    config.addPipelineStep('authorize', AuthorizeStep);
    

    这一步看起来像:

    @connectTo()
    export class AuthorizeStep {
      state: State;
    
      run(navigationInstruction, next) {
        if (navigationInstruction.getAllInstructions().find(x => x.config.isAdmin)) 
        {
          if (!this.state.user.isAdmin) {
            return next.cancel();
          }
        }
    
        return next();
      }
    }
    

    但是,我的状态总是不确定的。看看我项目的其他部分,我可以看到状态和用户正在被填充,但是看起来 AuthorizeStep 好像没用。

    我想这个问题可能是因为 授权步骤 没有 bind 生命周期方法,但如果是,我能做些什么呢?

    1 回复  |  直到 7 年前
        1
  •  1
  •   ViqMontana    7 年前

    奥雷利亚的维护者做出了回应(只是在我在他们的Github上提出了一个问题之后) here .

    基本上,由于这个类中不存在绑定生命周期,所以 @connectTo 装饰工不行。相反,我需要手动注入存储并订阅状态。

    推荐文章