Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript AngularJS递归模板默认情况下关闭所有节点,并通过单击展开它们_Javascript_Angularjs_Angularjs Ng Click_Ng Hide_Angularjs Ng Show - Fatal编程技术网

Javascript AngularJS递归模板默认情况下关闭所有节点,并通过单击展开它们

Javascript AngularJS递归模板默认情况下关闭所有节点,并通过单击展开它们,javascript,angularjs,angularjs-ng-click,ng-hide,angularjs-ng-show,Javascript,Angularjs,Angularjs Ng Click,Ng Hide,Angularjs Ng Show,在本例中,Ben Foster是否可以默认关闭所有节点(加载页面时)?要打开每个节点,请单击 我已经找到了一种获取所选节点的方法,但我不知道如何将其与ng click(单击)和ng show(显示)或ng hide(隐藏)相结合: ng-click='nodeSelected($event, category)' 和在控制器中 $scope.nodeSelected = function($event, category){ $event.stopPropagation();

在本例中,Ben Foster是否可以默认关闭所有节点(加载页面时)?要打开每个节点,请单击

我已经找到了一种获取所选节点的方法,但我不知道如何将其与ng click(单击)和ng show(显示)或ng hide(隐藏)相结合:

ng-click='nodeSelected($event, category)'
和在控制器中

$scope.nodeSelected = function($event, category){
    $event.stopPropagation();
    console.log('This node is selected' + category);
}

刚刚发现了一个类似的例子:

var gyroEditor=angular.module('gyroEditor',[]);
gyroEditor.controller('Ctrl',函数($scope){
$scope.nodes=[
{ 
标题:"电脑",,
类别:[
{
标题:“笔记本电脑”,
类别:[
{
标题:“超级图书”
},
{
标题:“Macbooks”
}
]
},
{
标题:“台式机”
},
{
标题:“平板电脑”,
类别:[
{ 
标题:“苹果”
},
{
标题:“安卓”
}
]        
}
]
},
{
标题:“打印机”
}
];
});
gyroEditor.directive('tree',function(){
返回{
限制:'E',
替换:正确,
作用域:{nodes:'=nodes'},
templateUrl:'tree.html',
控制器:功能($scope){
log('tree ctrl');
}
};
});
gyroEditor.directive('treenode',function(){
返回{
限制:'E',
替换:正确,
作用域:{node:'=node'},
templateUrl:'treenode.html',
控制器:功能($scope){
log('node ctrl');
}
};
});
gyroEditor.directive(“递归”,函数($compile){
返回{
限制:“EACM”,
优先:10万,
编译:函数(远程通讯,tAttr){
var contents=tElement.contents().remove();
var编译内容;
返回函数(范围、IELENT、iAttr){
如果(!compiledContents){
compiledContents=$compile(目录);
}
IELENT.append(
汇编内容(范围,
功能(克隆){
返回克隆;});
};
}
};
});
。面板左{
浮动:左;
宽度:200px;
利润率:0 20px 20px 0;
}
.小组编辑{
浮动:对;
身高:100%;
宽度:100%;
}

  • {{node.title}

  • 刚刚发现了一个类似的例子:

    var gyroEditor=angular.module('gyroEditor',[]);
    gyroEditor.controller('Ctrl',函数($scope){
    $scope.nodes=[
    { 
    标题:"电脑",,
    类别:[
    {
    标题:“笔记本电脑”,
    类别:[
    {
    标题:“超级图书”
    },
    {
    标题:“Macbooks”
    }
    ]
    },
    {
    标题:“台式机”
    },
    {
    标题:“平板电脑”,
    类别:[
    { 
    标题:“苹果”
    },
    {
    标题:“安卓”
    }
    ]        
    }
    ]
    },
    {
    标题:“打印机”
    }
    ];
    });
    gyroEditor.directive('tree',function(){
    返回{
    限制:'E',
    替换:正确,
    作用域:{nodes:'=nodes'},
    templateUrl:'tree.html',
    控制器:功能($scope){
    log('tree ctrl');
    }
    };
    });
    gyroEditor.directive('treenode',function(){
    返回{
    限制:'E',
    替换:正确,
    作用域:{node:'=node'},
    templateUrl:'treenode.html',
    控制器:功能($scope){
    log('node ctrl');
    }
    };
    });
    gyroEditor.directive(“递归”,函数($compile){
    返回{
    限制:“EACM”,
    优先:10万,
    编译:函数(远程通讯,tAttr){
    var contents=tElement.contents().remove();
    var编译内容;
    返回函数(范围、IELENT、iAttr){
    如果(!compiledContents){
    compiledContents=$compile(目录);
    }
    IELENT.append(
    汇编内容(范围,
    功能(克隆){
    返回克隆;});
    };
    }
    };
    });
    
    。面板左{
    浮动:左;
    宽度:200px;
    利润率:0 20px 20px 0;
    }
    .小组编辑{
    浮动:对;
    身高:100%;
    宽度:100%;
    }
    
    
  • {{node.title}

  • 谢谢,但您能解释一下如何显示数字吗?(1,2..)如果我想用一些图标(节点打开时的一些图标和节点关闭时的另一个图标)替换数字,该怎么办?数字来自
    ,您可以隐藏它们。对于图标,您可以使用类似
    的键键入:“myIcon”
    。在本例中,它使用
    font-awesome
    图标。检查这个例子:谢谢,但是你能解释一下你是如何让数字出现的吗?(1,2..)如果我想用一些图标(节点打开时的一些图标和节点关闭时的另一个图标)替换数字,该怎么办?数字来自
    ,您可以隐藏它们。对于图标,您可以使用类似
    的键键入:“myIcon”
    。在本例中,它使用
    font-awesome
    图标。检查此示例: