angular.js - Bagaimana untuk membaca json tempatan dengan angularjs?
黄舟
黄舟 2017-05-15 16:51:24
0
5
778

Saya membaca text.json dan menetapkannya kepada $scope.data, tetapi tiada respons apabila menggunakan ng-repeat dalam html. Bagaimanakah saya boleh menulis data baca ke lokasi yang sepadan dalam halaman html?
ps: Apabila kod ini dijalankan, ralat berlaku mengatakan bahawa laluan ke fail json tidak boleh ditemui 404.
js:

 function dataController($http,$scope) {
 $http.get("json/text.json").success(function(freetrial) { alert(freetrial);$scope.data = freetrial;});

Data dalam json:

{"freetrial":[{
"id": "01",
"imgurl": "images/1.jpg",
"status": "0"
},
{
"id": "02",
"imgurl": "images/2.jpg",
"status": "1"
}
]}

html:

<p ng-controller="dataController" ng-repeat="x in data|filter:{status:'0'}">
<p id="{{x.id}}">
<img ng-src="{{x.imgurl}}" />
</p>
</p>
黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

membalas semua(5)
仅有的幸福

Memandangkan ia telah menggesa 404, yang bermaksud json tidak ditemui, ia sepatutnya menjadi laluan yang salah

Dan success() dalam kaedah freetrial anda sebenarnya mewakili semua data json, jadi anda tidak akan dapat mendapatkannya apabila anda ingin mendapatkan tatasusunan nanti.

hendaklah diambil seperti ini:

 function dataController($http,$scope) {
     $http.get("json/text.json").success(function(data) {
         $scope.data = data.freetrial;
     });
 }
Ty80

Anda boleh mengkonfigurasi laluan mutlak dahulu, dan kemudian menukar kepada laluan relatif jika ia berjaya dan tiada masalah lain.

给我你的怀抱

Anda boleh mengkonfigurasi laluan mutlak dahulu, dan kemudian menukar kepada laluan relatif jika ia berjaya dan tiada masalah lain.

淡淡烟草味

Sudahkah anda mengeluarkannya?
Saya tidak dapat mengeluarkannya

曾经蜡笔没有小新

Jika ia adalah ralat 404, ini bermakna data json get belum diperoleh, iaitu, terdapat masalah dengan laluan json saya menyalin kod anda dan mencubanya data tidak akan dipaparkan pada halaman di atas.
Tetapi:

function dataController($http,$scope) {
$http.get("json/text.json").success(function(freetrial) {   
        alert(freetrial);
        $scope.data = freetrial;
        console.log($scope.data);//可以打印出数据
    });
};

Kaedah get yang betul hendaklah:

function dataController($http, $scope) {
    $http.get("rightUrl").success(function(data) {
        $scope.data = data.freetrial;
    });
};

Peranan data: rujuk kod sumber angular.js

 $http.get('test_data.json', 
     {cache: $templateCache}).success(function(userComments){
       self.userComments = userComments;
 });
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan