2016-08-18 40 views
0

創建的模板列表需要創建一個JSON文件以獲取URL(路徑)的模板和創建的模板列表循環...從JSON帶環在JavaScript

我該怎麼辦錯誤?

//get the JSON file from the server 
 
$http.get('static/titles.json').success(function(doc){ 
 
\t \t $scope.docs = doc; 
 
\t \t //preenche os templates a partir do JSON. 
 
\t \t fillTemplatesList(); 
 
\t }).error(function(error){ 
 
\t \t console.log(error); 
 
\t }); 
 

 

 
$scope.templates = []; 
 

 
\t function fillTemplatesList() { 
 
\t \t for (var i = 0; i < $scope.docs.length; i++) { 
 
\t \t \t $scope.templates[i].url = $scope.docs[i].url; 
 
\t \t \t console.log($scope.templates.url); 
 
\t \t } 
 
\t \t 
 
\t } 
 

 
//when user clicks, the page changes. 
 
$scope.cliked = function(index){ 
 
\t \t $scope.template = $scope.templates[index]; 
 
\t \t console.log(index); 
 
\t };
<div id="container-doc" class="col s9"> 
 
    <br> 
 
    <div class="container left" ng-include="template.url"> 
 
     
 
    </div> 
 
    </div>

回答

0

因此,有從我所看到的幾個問題,但是你可以做一些這樣的事:

<div id="container-doc" class="col s9" ng-controller="myCtrl as myCtrl"> 
    <br> 
    <div class="container left" ng-include="myCtrl.template.url"> 

    </div> 
    <button ng-click="clicked()">Click</button> 
    </div> 

,然後在JS:

var myapp = angular.module('myapp', []) 

var json = ['home.html', 'test.html']; 
function myController($scope) { 
    var vm = this; 
    vm.index =0; 
    vm.template = {url : json[vm.index]} 
    $scope.clicked = function() { 
    vm.index = 0 + !vm.index 
    vm.template.url = json[vm.index]; 
    } 
} 

myapp.controller('myCtrl', myController) 

所以我只是維護網址列表,那裏是似乎沒有必要再用fillTemplatesList函數解析它們。 然後,當你點擊你可以改變索引,基於一些簡單的邏輯。

實驗與本plunkr,你可以把你的JSON數組到位礦井:

plunky

但是它似乎這只是究竟意欲何爲NG-路由,所以我想看看那個也許可以從那裏的大量模板中獲得一個示例ng-route plunkr。