javascript - how to get data from controller to $scope in mvc using angularjs - Stack Overflow

I am new to angular js, I am using angular js with mvc5 application. I have created a module and contro

I am new to angular js, I am using angular js with mvc5 application. I have created a module and controller in the js for angular. I have one action "View" in customer controller(MVC5). We need to show the all the customer in this view and i want to use "ng-repeat" here.

My problem is i am getting collection of customer as model, previously i was making foreach loop of model to show the customers. Now how i can add model into $scope data container so that i can use in ng-repeat.

I am new to angular js, I am using angular js with mvc5 application. I have created a module and controller in the js for angular. I have one action "View" in customer controller(MVC5). We need to show the all the customer in this view and i want to use "ng-repeat" here.

My problem is i am getting collection of customer as model, previously i was making foreach loop of model to show the customers. Now how i can add model into $scope data container so that i can use in ng-repeat.

Share Improve this question asked Sep 2, 2014 at 7:40 FookerFooker 7962 gold badges10 silver badges19 bronze badges
Add a ment  | 

3 Answers 3

Reset to default 1

What you have been doing till now is rendering the customers collection on server straight to the HTML returned to the client. What you want to do ideally is to render the HTML without the customers collection and have a call over $http service to your API controller to give you the data. From there is is easy, you

I suggest reading:

  • http://www.asp/web-api/overview/getting-started-with-aspnet-web-api/tutorial-your-first-web-api
  • https://docs.angularjs/api/ng/service/$http
  • https://docs.angularjs/api/ng/directive/ngRepeat

Using $http in your controllers is far away from the best practice, but for simplification...the $http call in your controller could look like this:

$http({method: 'GET', url: '/api/customers'}).
    success(function(data, status, headers, config) {
        $scope.customers = data;
    }).
    error(function(data, status, headers, config) {
      alert('error');
    });

Then you ngRepeat in the view:

  <ul>
    <li ng-repeat="customer in customers">
       {{customer.name}}
    </li>
  </ul>

For getting the data you need the http module to make call to server https://docs.angularjs/api/ng/service/$http

you should be doing this via an api request to an MVC controller function that is returning json to your frontend and than use the data with $http or $resource to feed it into your controller.

发布者:admin,转转请注明出处:http://www.yc00.com/questions/1745639559a4637603.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信