是否可以通过ID访问对象来获取对象的特定范围?
我使用角度ui树作为导航菜单。添加子项并将导航保存到mysql数据库后,子项的节点不会展开。 推送后,我看到菜单展开,但在将其保存在数据库中并重新渲染导航菜单后,节点不会展开。
让某人有解决方案吗?
菜单的JSON-Object。
[
{
"id": 35,
"title": "foo",
"items": []
},
{
"id": 34,
"title": "bar",
"items": [
{
"id": 123,
"title": "foobar",
"items": []
},
]
},
{
"id": 46,
"title": "barfoo",
"items": []
},
]
此结构使用以下代码保存
function setMenu(nodeID) {
$http.post("...", {
"menuJSON" : $scope.menu
}).success(function (data, status, headers, config) {
if (status == 200) {
loadAdminNavigation();
}
});
};
将其保存在mysql数据库中后,将使用此代码
重新加载该结构function loadAdminNavigation() {
$http.get("...").success(function (response) {
$scope.menu = response;
});
};
如果我添加一个SubItem,所有范围都是新的,我想用模型中的ID扩展节点。所以我需要知道如何通过ID访问范围。
答案 0 :(得分:0)
获取元素范围的示例代码:
onTick()
关于var documentResult = document.getElementsById("someId");
angular.element(documentResult).scope();
的官方Angular文档:
https://docs.angularjs.org/api/ng/function/angular.element
scope() - 检索当前元素或其父元素的范围。需要启用调试数据。
可以阅读该帖子:How do I access the $scope variable in browser's console using AngularJS?
答案 1 :(得分:0)
您可以轻松完成:
angular.element(document.querySelector('#myId'))。scope();
甚至:
angular.element('#myId')。scope();
干杯!