小编Kar*_*ell的帖子

服务变量未在控制器中更新

我有一个在ng-view之外的NavbarCtrl.我有一个登录控制器,它与服务进行通信以使用户登录.一旦用户登录,我希望Navbar使用用户的电子邮件地址进行更新.但是对于我的生活,一旦用户登录,我似乎无法使用加载到我的"Auth"服务中的数据来更新Navbar范围.

这是我的主要index.html:

<div class="navbar navbar-inverse navbar-fixed-top">

        <div class="navbar-inner">
            <div class="container">
                <a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                </a>
                <a class="brand" href="#">Brim</a>

                <div class="pull-right"  ng-controller="NavbarCtrl">
                    <div ng-click="refresh()">hello</div>
                    {{ user.email }}
                </div>
            </div>
        </div>

    </div>

    <div class="container" ng-view>
Run Code Online (Sandbox Code Playgroud)

我的服务:

.factory('Auth', function($resource) {
    var authenticated = false;
    var user = {};
    return {
        isAuthenticated: function () {
            return authenticated;
        },
        getUser: function() {
            return user;
        },
        login: function(loginUser, callback) {
            user =  {email:'email@email.com'}
            authenticated = true;
            callback(true);
            //actual code …
Run Code Online (Sandbox Code Playgroud)

angularjs

24
推荐指数
1
解决办法
2万
查看次数

标签 统计

angularjs ×1