如何重复响应数据

问题描述 投票:1回答:3

我有一段简单的代码将数据发送到php进行处理,然后返回它。我想在页面中重复这些数据,我只是不知道什么是不对的。我必须指出一个事实,我只是一个新手,因此我可能会忽略一些事情......

所以我在控制器中有这个:

  $scope.one = function () {
  $http({
  method: "POST",
  url: 'destination.php',
  data: {'message' : something},
  })
  .then(function(response)
  {
  $scope.message = response.data.results;
  }
  )}

这就是数据如何传递给PHP并从中返回:

$params = json_decode(file_get_contents('php://input'), true);
$outp = "";
if ($outp != "") {$outp .= ",";}
$outp .= '{"REZCMD":"'  . $params["message"] . '"}';
$outp ='{ "results":[ '.$outp.' ] }';
echo $outp;

例:

{ "results":[ {"REZCMD":"somethingprocessed"} ] }

这是HTML

  <div ng-repeat="x in message track by $index"></div>
   <li>{{message}}
   <li>{{x.REZCMD}}

打印这个:(示例)

*[{"REZCMD":"1003372"}]
*

编辑

对于这个结果:

{ "results":[ {"REZCMD":"1003372"} ] }

我期待的应该是这样的:

  • 1003372
  • php angularjs json angularjs-ng-repeat angularjs-http
    3个回答
    1
    投票

    如果您只需要打印值,那么:

    <div>
       <li ng-repeat="obj in message">{{obj.REZCMD}}</li>
    </div>
    

    此方法列在文档:https://docs.angularjs.org/api/ng/directive/ngRepeat


    0
    投票

    可能是,下面的代码是你想要的:

    <ul>
       <li>{{message}}</li>
       <li ng-repeat="x in message track by $index">{{x.REZCMD}}</li>
    </ul>
    

    0
    投票

    你正在回应PHP代码中的一个字符串,也许你应该在JSON.parse()上使用response.data.results并在HTML中使用下面的代码来ng-repeat

    <ul>
       <li ng-repeat="m in message track by $index">
         {{ m.REZCMD }}
       </li>
    </ul>
    
    © www.soinside.com 2019 - 2024. All rights reserved.