AngularJS を使用して JSON 配列 (文字列のリスト) を取得しようとしています。次のようにリソースを作成しました。
packageResource.factory('Package', ['$resource', function($resource) {
return $resource('/static/package.json', {}, {
'get': {
method: 'GET',
transformResponse: function (data) {
return angular.fromJson(data)
},
isArray: true
}
});
}]);
そして、私のコントローラーは次のようになります:
MainController = [
'$scope', 'Package', function($scope, Saved, Rules) {
$scope.package = (Package.get());
}
];
そして私のテンプレート:
<ul>
<li ng-repeat="item in package">{{item}}</li>
</ul>
<p> {{package}}</p>
package.json 配列内のすべてのアイテムのリストが表示されることを期待してから、テストのために を追加し{{package}}
、内容を出力することを期待していましたが、代わりに次のようになりました。
- {}
- {}
- {}
- {}
- {"0":"s","1":"r","2":"d"}
JSON ファイルには次のものが含まれます。
[1,3,6,"srd"]
ただし、package.json をオブジェクトに変更すると、完全に機能します。例えば:
{
"author": "John",
"name": "project",
"version": 1
}
そしてもちろん、 に変更isArray
しfalse
ます。私は得る:
- ジョン
- 事業
- 1
そのため、何かが配列を処理できず、オブジェクトにマングルしているように見えます。私は何を理解するのに苦労しています - すべての Angular のドキュメントは Resource と Scope が配列で動作していることを示しています。isArray: true
リソース定義にフラグを明示的に追加しましたが、うまくいきませんでした。
Angular バージョン 1.0.8 を使用しています。私は完全な初心者なので、痛いほど明白なことかもしれませんが、これを1日以上機能させようとしています.