首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ng-repeat不渲染数组中的数据

ng-repeat不渲染数组中的数据
EN

Stack Overflow用户
提问于 2017-04-07 08:52:01
回答 1查看 67关注 0票数 0

我正在开发一个网络应用程序,非营利组织可以创建个人资料,并可以轻松地通过各种参数进行搜索。在“创建和组织”表单中,我有一个嵌套数组,组织可以在其中添加他们需要的捐赠。该数组存储的是ok (我可以添加多个捐赠),但是当我尝试使用ng-repeat显示它时,什么都没有呈现。当我不使用ng-repeat而只是通过{{ ctrl.organization.donations }}显示时,信息会用括号和引号显示。

下面是我用来添加捐赠的代码(通过newOrganization控制器):

代码语言:javascript
复制
    function NewOrganizationController(OrganizationService, CategoryService, $stateParams, $state, $http, Auth){

    var ctrl = this;

  CategoryService.getCategories().then(function(resp) {
    ctrl.categories = resp.data;
  });

  ctrl.donations = [{text: ''}];

  Auth.currentUser().then(function(user) {
    ctrl.user = user;
  })

  ctrl.addNewDonation = function() {
    var newDonation = ctrl.donations.length+1;
    ctrl.donations.push({text: ''});
  };

  ctrl.removeDonation = function() {
      var lastItem = ctrl.donations.length-1;
      ctrl.donations.splice(lastItem);
    };

  ctrl.addOrganization = function() {
    var donations = this.donations;
    var allDonations = [];

    for (var key in donations) {
      if (donations.hasOwnProperty(key)) {
        var donation = donations[key].text;
        allDonations.push(donation);
      }
    }
    var data = {
        name: ctrl.organization.name,
        description: ctrl.organization.description,
        address: ctrl.organization.address,
        donations: allDonations.join("/r/n"),
        category_id: this.category.id
    };


    OrganizationService.createOrganization(data);
    $state.go('home.organizations');
  };

}


angular
  .module('app')
  .controller('NewOrganizationController', NewOrganizationController);

这是我用来在我的展示页面上显示数组的代码(这是用括号显示的,即所需的捐款:“食物”,“衣服”):

代码语言:javascript
复制
<h5>{{ ctrl.organization.donations }}</h5>

这是ng-repeat代码,它不会向页面呈现任何内容:

代码语言:javascript
复制
<li class="list-group-item" ng-repeat="donation in donations track by $index">
   {{ donation }}
 </li>

我尝试在{{捐赠}}括号内使用.join(','),但这不被识别为函数。

编辑:在采纳了AJ的建议后,这里有一个截图,展示了appears...anyone知道如何解决这个问题?

seems that my array is showing up in table form, with each row containing one character

任何帮助都将不胜感激。这是github存储库的link,如果你想看其他任何东西或获得更大的图片。

EN

回答 1

Stack Overflow用户

发布于 2017-04-07 09:16:36

您需要使用与h5中相同的变量名

代码语言:javascript
复制
<li class="list-group-item" ng-repeat="donation in ctrl.organization.donations track by $index">
   {{ donation }}
</li>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43267972

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档