【问题标题】:Angularjs JSON content inside ng-viewng-view 中的 Angularjs JSON 内容
【发布时间】:2016-08-25 06:23:10
【问题描述】:

我被困在 ng-view 中调用 json 文本。在普通的 HTML {{profile.experience}} 中,这非常有效。从 json 中获取数据。 但是由于我添加了 ng-view {{profile.experience}} 无法从 json 中获取数据。

<div class="profile-snapshot">                          
    <ul>
        <li><span>Experience:</span><p> {{profile.experience}}</p></li>
        <li><span>Education:</span><p> {{profile.education}}</p></li>
        <li><span>Designation:</span><p>{{profile.designation}}</p></li>
        <li><span>Age:</span><p>32</p></li>
        <li><span>City:</span><p>Thane</p></li>                             
    </ul>
</div>

这就是我的 json 的样子

 {
"experience": "Experience 8 Years asda s",
"education": "MBA, B.COM",
"designation": "UX Designer, Front End Developer"
}

这就是我的 angularjs 代码的样子

var accord = angular.module('accord', []);
var profileLoad = angular.module('profileLoad',[]);
var app2 = angular.module('main-app', ['accord','profileLoad','ngRoute']);

profileLoad.controller('profileCntrl', function($scope, $http){
'use strict';
$http.get('candidateProfile.json').success(function(data) {
        $scope.profile = data;
    });
});


app2.config(function($routeProvider) {
$routeProvider
    .when('/home', {
        templateUrl: 'profile.html',
        controller: 'StudentController'
    })
    .when('/viewStudents', {
        templateUrl: 'profile-edit.html',
        controller: 'StudentController'
    })
    .otherwise({
        redirectTo: '/home'
    });
});

谁能帮我在 ng-view 中获取 json 数据?

【问题讨论】:

  • 尝试告诉 Angular 您在 success 块内使用 $scope.$apply() 更新了数据。
  • 您能详细说明一下吗?如果可以的话
  • $scope.apply() 告诉 Angular 发生了模型更新,它需要更新绑定到该范围的视图。更新$scope.profile后,尝试在success函数中调用$scope.$apply()
  • 感谢@MuliYulzary 尝试过。但没有运气。认为我应该上传plnkr.co
  • 去吧,我去看看。

标签: angularjs angularjs-routing ng-view


【解决方案1】:

除非我错过了什么,否则我认为

profileLoad.controller('profileCntrl', function($scope, $http){ ... }

应该是

profileLoad.controller('StudentController', function($scope, $http){ ... }

您正在检索未映射到 $routeProvider 中的模板的控制器中的数据。

此外,您应该将您的$http.get 放入服务中,并将该服务注入您的控制器。将您的关注点分开,让您的控制器保持精简。

【讨论】:

  • 可以请任何人帮忙吗?
【解决方案2】:

因为我已经应用了控制器。我唯一需要做的就是删除 controller: 'StudentController'

这为我解决了问题。

非常感谢这里成员的快速回复。

大家好

【讨论】:

    猜你喜欢
    • 2016-03-26
    • 1970-01-01
    • 2023-03-19
    • 2013-06-05
    • 1970-01-01
    • 1970-01-01
    • 2014-10-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多