gpt4 book ai didi

angularjs - $scope.myVariable 未在 angular-ui 引导模式的 Controller 中更新

转载 作者:行者123 更新时间:2023-12-03 20:39:10 24 4
gpt4 key购买 nike

在我看来,我有一个输入、一个跨度和一个按钮,如下所示:

<script type="text/ng-template" id="myTemplate.html">
<input type="text" ng-model="phoneNumber">
<span>{{ phoneNumber}}</span>
<input type="button" ng-click="click()">
</script>

在文本框中输入时, span 的内容按预期阅读更新。但是当点击按钮时, phoneNumber Controller 内部没有更新:
app.controller('myPopopCtrl', ['$scope', '$modalInstance',
function ($scope, $modalInstance) {
$scope.phoneNumber= '';

$scope.click = function() {
alert($scope.phoneNumber); // alerts only ''
};

您是否可以在 Angular 中犯一些新错误,导致 $scope 上的内容无法更新?在 Controller 内部?

angular-ui modal 是否存在 $scope 问题?我需要注意吗?

编辑:

好像是 phoneNumber在 2 个范围内创建。一次在蓝色箭头的范围内,其中 phoneNumber: ''并在红色箭头处的子范围内。该 View 使用 phoneNumber在子作用域中, Controller 使用 phoneNumber在父范围内...

enter image description here

为什么要创建两个范围?

最佳答案

ng-include创建一个新的范围。所以传递一个对象而不是字符串
$scope.phone={number:null}
然后模板看起来像

<script type="text/ng-template" id="myTemplate.html">
<input type="text" ng-model="phone.number">
<span>{{ phone.number}}</span>
<input type="button" ng-click="click()">
</script>

看看这个 wiki了解原型(prototype)继承的问题。

关于angularjs - $scope.myVariable 未在 angular-ui 引导模式的 Controller 中更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19401941/

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