AngularJS:ui-router解析后无法访问控制器中的变量

Posted

技术标签:

【中文标题】AngularJS:ui-router解析后无法访问控制器中的变量【英文标题】:AngularJS: Cannot reach variable in the controller after ui-router resolving 【发布时间】:2017-04-16 03:58:03 【问题描述】:

我在配置中有以下代码。我用ui-router

template: "<employee-info-component user='$resolve.user'></employee-info-component>",
      resolve: 
           user: function () 
                return 'hello!';
           
      

在组件中绑定:

binding:
    user: '<'

我无法在employee-info-component 的控制器中访问$ctrl.user。我做错了什么?

【问题讨论】:

resolve 的 key 将被注入到路由的控制器中,而不是直接在模板中访问,因为它也可能是 promise 并且在模板渲染之前没有被解析这里 cehck github.com/angular-ui/ui-router/wiki 感谢您的回答!但是template render cehck here之前是什么意思? 【参考方案1】:

组件中没有binding 属性。只有bindings 属性,我们可以在其中指定将被链接的变量。所以你只是在语法上犯了错误

【讨论】:

【参考方案2】:

user 应该在控制器而不是模板中用作依赖项。如果需要,将用户注入控制器并将其绑定到范围变量,然后使用它。

【讨论】:

以上是关于AngularJS:ui-router解析后无法访问控制器中的变量的主要内容,如果未能解决你的问题,请参考以下文章

AngularJS:无法使用 ui-route $state 获取 html5 模式网址

(AngularJS) 设置 UI-Router 后注入不起作用

尽管ui-route和provider似乎工作正常,但我无法在angularjs中加载视图......这是一段代码

Angularjs UI-route 为啥无法跳转到 test.html

ui-router 中的 AngularJS 组件/范围问题

angularJs的ui-router总结