gpt4 book ai didi

javascript - 在运行时从开发控制台修改 Angular 对象

转载 作者:行者123 更新时间:2023-11-28 15:37:26 25 4
gpt4 key购买 nike

我正在尝试从控制台更改 Angular 模块内的一些变量,但不断遇到障碍。

我有一个特定的属性,最终将由后端服务器提供。在该部分准备就绪之前,我想通过从控制台更改属性来测试我的模板。

因此,如果我从 angularjs 文档中借用一个示例:

myApp.value('clientId', 'a12345654321x');
myApp.controller('DemoController', ['$scope', 'clientId', function DemoController($scope, clientId) {
$scope.clientId = clientId;
}]);

我想在运行时从控制台更改该值。有谁知道有什么方法吗?

我尝试使用不同的全局对象,但摘要没有获取更改

var myNamespace = {clientId: "a12345654321x"};

myApp.controller('DemoController', ['$scope', function DemoController($scope) {
$scope.specialGlobal = myNamespace;
}]);

//then in html template
<h1>{{specialGlobal.clientId}}</h1>

这适用于初始加载,但通过控制台对 myNamespace.clientId 的更改不会传播。

运行 angularjs 1.3.x

最佳答案

您可以通过 angular.element 在控制台中获取当前的范围 - 定位 Controller 内的 ID:

var scope = angular.element(document.querySelector("#idOfElementInController")).scope();

现在您可以通过 scope 更改 $scope 上的变量

scope.specialGlobal = "new value";

关于javascript - 在运行时从开发控制台修改 Angular 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25145669/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com