我可以通过向 AngularJS 发送变量来更改加载的 JSON 文件吗?

Can I change which JSON file is loaded by sending a variable to AngularJS?

本文关键字:加载 JSON 文件 可以通过 AngularJS 变量      更新时间:2023-09-26

我想加载两个JSON文件之一的内容,food1.json或food2.json。我正在尝试从 html 模板执行此操作:

  <body ng-controller="MainCtrl" ng-init="init('food1')">

然后在 JS 中:

$scope.init = function (name) {
    $scope.name = name;
    $scope.category = name + ".json";
    $scope.foodlist = {};
    $http({
        method: 'GET',
        url: $scope.category,
    }).success(function (data, status, headers, config) {
        {
            $scope.foodlist = data;
        }
    }).error(function (data, status, headers, config) {
        // something went wrong :(
    });
};
});

类别名称正确组合:如果我打印I am {{ category }},我会得到"我是食物1"。但是没有印刷食品。我想我做错了 JSON 调用。

这是我的普伦克

您尚未在控制器中注入$http。将代码更改为

app.controller('MainCtrl', function($scope, $http) {

而不是

app.controller('MainCtrl', function($scope) {

演示