gpt4 book ai didi

javascript - 使用 angular.js 访问和修改在模板中启动的模型

转载 作者:行者123 更新时间:2023-11-28 02:05:07 24 4
gpt4 key购买 nike

fiddle :http://jsfiddle.net/RnJbt/2/

我有一个模板 block ,我在其中启动一个本地模型,该模型对于包含在命名空间中并不重要,但对于模板的范围很有用。当用户单击按钮时,模型将传递给函数。该函数应该更新模型的值。

Fiddle 显示模型“deneme”在作为参数传递给更新函数时不会改变。但是,如果我通过 $scope 对象访问模型,我可以更新“update”函数中的值,如下所示。

...controller...
$scope.update = function(val){
val = 10; // does not update deneme
$scope.deneme = 34; // updates it as expected
}

我不想用一次性模型名称污染 Controller 的命名空间,这些模型名称仅对它们启动的模板 block 有用。我如何在 Controller 范围内处理几乎匿名的参数,而不必通过名称声明它们?

最佳答案

因为它是一个原始值。我稍微改变了 fiddle ,就像这样,它按照你的预期工作:

ng-init="deneme = {value: 5}"

$timeout(function(){
val.value = 23;
.....

这与将任何 javascript 变量设置为基元,然后将另一个变量设置为该值,然后重置原始变量相同。

var a = 10
var b = a
var a = 2
// a = 2, b = 10

几个月前我遇到了同样的问题,所以它仍然在我的脑海中。

关于javascript - 使用 angular.js 访问和修改在模板中启动的模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17889659/

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