具有嵌套JSON和视图的AugularJS

时间:2016-08-06 16:21:10

标签: javascript angularjs json ionic-framework

我是离子的新手,所以开始玩首发。我正在为内部目的建立一个类似app的图书馆,这里是我的 Plunker

我的书籍数据存储在 services.js 中的json中 正如您所看到的,它是一个嵌套的json,有几个图书类别,每个类别都会有很多书。 我已设法从中提取类别信息,并使用ng-repeat将它们拉入列表。

我想要实现的是当您点击其中一个类别时,它会转到视图/页面,列出该类别的所有书籍(模板文件chat-detail.html )。 然后,如果您点击某本书,它将打开详细页面(模板未制作,因为我无法通过最后一步)。

我正在尝试使用以下代码获取类别名称:

get: function(catname) {
  for (var i = 0; i < chats[0].categories.length; i++) {
    if (chats[0].categories[i].catname === catname) {
      return chats[0].categories[i];
    }
  }
  return null;
}

我做了一个console.log,我可以看到该数组按预期返回。

但是当我点击类别列表时没有任何反应,错误消息根本不是用户友好的。一些东西从Injector开始,然后是数百行。 AngularJS文档说这与不匹配的控制器名称有关,但是我已经对我的名字进行了三次检查,它们对我来说很好看。

我整整一周都被困在这里,任何人都会对此有所了解,我将不胜感激。

您可以使用 my code here 直接修改我感觉我的控制器有问题.js,只是不知道在哪里。

1 个答案:

答案 0 :(得分:0)

我将ionic.bundle.min.js替换为non-minified version,并收到以下错误:

  

错误:[$ injector:unpr]未知提供商:appTabsProvider&lt; - appTabs   &lt; - AppTabs

这表明angular无法解析appTabs依赖关系。

controller.js我替换了这个:

.controller('AppTabs', function($scope, $stateParams, appTabs) {
    appTabs.displayEffect();
})

用此来解决依赖性错误。

.controller('AppTabs', function($scope, $stateParams, ionicMaterialInk) {
    ionicMaterialInk.displayEffect();
})

我不知道这是不是你想要的,但我看到ionicMaterialInk.displayEffect();被其他地方使用了。

希望这可以帮助你。