在解析中检索信息

时间:2015-01-01 23:04:13

标签: javascript jquery angularjs parse-platform

我能够从Parse中的当前用户检索信息,但是,我希望能够从除当前用户之外的任何人检索信息。

例如,这是我检索和显示有关当前用户的信息的方式:

Parse.initialize("ID", "ID");

angular.module('AuthApp', [])
.run(['$rootScope', function($scope) {
  $scope.currentUser = Parse.User.current();

比我在html中引用的那样:

{{currentUser.get('username')}} 

我不想从当前用户那里获取拉信息,而是由他们的objectID.Hence确定的另一个用户,我的问题是如何拉出信息让我们说一个用户用objectid 17845

更新

<script type="text/javascript">
$(document).ready(function() {

  // ***************************************************
  // NOTE: Replace the following your own keys
  // ***************************************************
  var userID = document.getElementById("txtUserID").value;

    Parse.initialize("ID", "ID");


var userInfo = Parse.Object.extend("User");
var query = new Parse.Query(userInfo);
query.get(userID, {
  success: function(userInfo) {
    // The object was retrieved successfully.
    var score = userInfo.get("Address");


 var message = 'Address: ' + score;
        document.getElementById('address').innerHTML = message;
  },
  error: function(object, error) {
    // The object was not retrieved successfully.
    // error is a Parse.Error with an error code and message.
  }
});



});
</script>
</head>
<body ng-app="AuthApp">


  <div ng-show="currentUser">

  <input name="txtUserIDName" id="txtUserID"  type="text" value="Please enter your user ID">



</div>

  </div>
</body>
</html>

更新2:

<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.0.7/angular.min.js"></script>
<script src="http://www.parsecdn.com/js/parse-1.2.12.min.js"></script>
    <link href="css/bootstrap.min.css" rel="stylesheet">
<!--======================================================================-->
<!--Custom website css file is linked here-->
<link href="css/style1.css" rel="stylesheet">
<!--Font Awesome CSS link-->
<link href="//maxcdn.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.min.css" rel="stylesheet">
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<!--=================================================-->
<!--Javascript file linked here-->
<script src="js/bootstrap.min.js"></script>
<script src="js/personal.js"></script>
    <script src="js/functions.js"></script>

<meta charset=utf-8 />
<title>Admin Panel</title>

<script type="text/javascript">
$(document).ready(function() {

  // ***************************************************
  // NOTE: Replace the following your own keys
  // ***************************************************

    Parse.initialize("ID", "ID");


app.controller('MainCtrl', function($scope) {
  $scope.userIdChanged = function () {
    var query = new Parse.Query(Parse.User);

    query.get($scope.userId, {
      success: function(userInfo) {
        // The object was retrieved successfully.
        var address = userInfo.get("Address");
        $scope.address = 'Address: ' + address;
      },
      error: function(object, error) {
        // The object was not retrieved successfully.
        // error is a Parse.Error with an error code and message.
      }
    });
  };
});
</script>
</head>
<body ng-Controller="MainCtrl">
    userId: <input type="text" ng-model="userId" ng-blur="userIdChanged()"/>
    <div>{{address}}</div>
</body>
</html>

1 个答案:

答案 0 :(得分:1)

var query = new Parse.Query(Parse.User);

query.get('17845', {
  success: function(userInfo) {
    // The object was retrieved successfully.       
  },
  error: function(object, error) {
    // The object was not retrieved successfully.
    // error is a Parse.Error with an error code and message.
  }
});

更新回答:

您应该使用角度数据绑定,而不是使用dom操作javascript,例如document.getElementById和jquery $(document).ready。无需使用var userInfo = Parse.Object.extend("User");,因为Parse.User中已有。

app.controller('MainCtrl', function($scope) {
  $scope.userIdChanged = function () {
    var query = new Parse.Query(Parse.User);

    query.get($scope.userId, {
      success: function(userInfo) {
        // The object was retrieved successfully.
        var address = userInfo.get("Address");
        $scope.address = 'Address: ' + address;
      },
      error: function(object, error) {
        // The object was not retrieved successfully.
        // error is a Parse.Error with an error code and message.
      }
    });
  };
});

Html:

我在这里使用ng-blur,当值发生变化且文本框失去焦点时,会在范围内调用userIdChanged方法。您也可以使用按钮并使用ng-click。

<body ng-Controller="MainCtrl">
    userId: <input type="text" ng-model="userId" ng-blur="userIdChanged()"/>
    <div>{{address}}</div>
</body>
相关问题