2017-11-24 17 views
1

私はAngularJSを初めて使っていますので、私はこの小さなことにこだわりましたユーザーアプリケーション。AngularJS:jsonplaceholder.typicode.comをデータソースとして使用しても動作しません

var root = 'https://jsonplaceholder.typicode.com'; 
 

 
// Create an Angular module named "usersApp" 
 
var app = angular.module("usersApp", []); 
 

 
// Create controller for the "usersApp" module 
 

 
app.controller("usersCtrl", ["$scope", function($scope) { 
 

 
    $scope.users = root + "/users"; 
 

 
}]);
.search-box { 
 
    margin: 5px; 
 
} 
 

 
.table-container .panel-body { 
 
    padding: 0; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"> 
 

 
<div class="container" data-ng-app="usersApp"> 
 
    <div class="panel panel-default table-container"> 
 
    <div class="panel-heading">Users</div> 
 
    <div class="panel-body" data-ng-controller="usersCtrl"> 
 
     <div class="row"> 
 
     <div class="col-sm-12"> 
 
      <div class="form-group search-box"> 
 
      <input type="text" class="form-control" id="search" placeholder="Search User" data-ng-model="search"> 
 
      </div> 
 
     </div> 
 
     <div class="col-sm-12"> 
 
      <table class="table table-striped table-bordered" id="dataTable"> 
 
      <thead> 
 
       <tr> 
 
       <th>Full name</th> 
 
       <th>Email</th> 
 
       <th>City</th> 
 
       <th>Street</th> 
 
       <th>Suite</th> 
 
       <th>Zipcode</th> 
 
       </tr> 
 
      </thead> 
 
      <tbody> 
 
       <tr data-ng-repeat="user in users|filter:search"> 
 
       <td>{{user.name}}</td> 
 
       <td><a href="mailto:{{user.email}}">{{user.email}}</a></td> 
 
       <td>{{user.address.city}}</td> 
 
       <td>{{user.address.street}}</td> 
 
       <td>{{user.address.suite}}</td> 
 
       <td>{{user.address.zipcode}}</td> 
 
       </tr> 
 
      </tbody> 
 
      </table> 
 
     </div> 
 
     </div> 
 
    </div> 
 
    </div>
: - 私はすでに HERE(jsFiddle)を行っているように、sucessfully - 私はデータソースとしてjsonplaceholder.typicode.comを使用する代わりに、コントローラ内のデータのユーザー・アレイを書くの

しかし、私は理解できません何らかの理由で、動作しません。私は間違って何をしていますか?ありがとうございました!

更新:作業フィルドHERE

答えて

0
var root = 'https://jsonplaceholder.typicode.com' 
    $scope.users = root + "/users"; 

ここでは、データを取得するためのHTTP要求はありません。ここではスコープ内のユーザー変数は動作しません。この

var root = 'https://jsonplaceholder.typicode.com'; 

// Create an Angular module named "usersApp" 
var app = angular.module("usersApp", []); 

// Create controller for the "usersApp" module 

app.controller("usersCtrl", ["$scope","$http", function($scope,$http) { 
    var url = root + "/users" 
    // $http is a service in angular which is used to make REST calls 
    // we call the url and get the data , which is resolved as a promise 
    $http.get(url) 
.then(function(data){ 
// after the data is resolved we set it in the scope 
    $scope.users = data.data; 
}) 


}]); 
+0

のようなものでなければなりません

$scope.users = 'https://jsonplaceholder.typicode.com/users' 

コードすなわち唯一 文字列です。しかし、ありがとう! –

+0

私はマイナーなバグを修正しました。今は十分にうまくいくはずです – UchihaItachi

+0

私はちょうどアンギュラを学んでいるので、(実践的な)ヘルプに感謝します。明示的にするためにあなたのコードをコメントできますか?ありがとうございました! –

関連する問題