我该如何使用AngularJS和serializeJSON CFQUERY(how can I us

2019-07-17 19:45发布

我想看看AngularJS,用CF后端

我有以下的代码,拉了一个名为getIndex定期CFQUERY其列拉五个行,每行(名字,姓氏)

var theQuery = <cfoutput>#serializeJSON(getIndex,true)#</cfoutput>;
        var theData = theQuery.DATA

        function dataLooper($scope){
            $scope.people = theData;
            console.log($scope.people);
        }

控制台日志产生

对象{FIRSTNAME = [5],LASTNAME = [5]}

我的HTML看起来像

<div ng-controller="dataLooper">
          <div ng-repeat="person in people">
          {{person}} - {{person.FIRSTNAME}}<br>
          </div>
</div>

产生

    ["Yasteel","Kyleigh","Gary","Nick","Kerry-Leigh"] -
["Si","No","Ho","Ga","Gr"] - 

显然,我失去了一些东西,因为这是不是我所期待的。 我猜测,这是因为AngularJS正在寻找一个替代Arrray的对象。 我不知道,但我希望serializeJSON会给我一些类型可用的对象中没有大量的额外操作的。 有人能指出我朝着正确的方向吗?

Answer 1:

NG-重复可以处理的阵列或一个对象。 为对象,使用“(键,值)”的语法。

这虽然不会解决你的问题,除非你重新格式化,像这样的数据:

{ 'Yasteel':'Si', 'Kyleigh':'No', ... }

然后,你可以这样做:

<div ng-repeat="(first,last) in people">
    {{first}} - {{last}} <br>
</div>


Answer 2:

@马克感谢您的帮助。 我的问题是,特别是约一个CFQUERY转换的东西ANGULAR可以处理。 从本纳德尔的一点点帮助约角文章和有关查询转换到结构的数组文章 。 我把它完成。

对于会发现这个去拿本的那些CFers queryToArray 。 这里是一个包含列名字,姓氏,年龄查询的例子。

<cfscript>
  a = createObject('component','angular');
  getQuery = a.getQuery();
  QueryArray = a.queryToArray(getQuery);
</cfscript>

<script type="text/javascript"> 
  var theQuery = <cfoutput>#serializeJSON(QueryArray)#</cfoutput>;
  function dataLooper($scope){
    $scope.people = theQuery;
  }
</script>

<div ng-controller="dataLooper">
  <div ng-repeat="person in people">
  {{person.FIRSTNAME}} - {{person.LASTNAME}} - {{person.AGE}}<br>
  </div>
</div>

我希望这可以帮助别人谁正在努力学习角!



文章来源: how can I use AngularJS and a serializeJSON cfquery