簡體   English   中英

AngularJS范圍不適用於html頁面

[英]AngularJS Scope not applying to html page

我在一頁上有兩個單獨的控制器。 其中一個廣播事件,另一個收聽該事件。 當偵聽事件的人收到事件時,它將更改其作用域變量,然后打印頁面。 由於某種原因,我看到該范圍適用,但我看不到該范圍適用於該頁面。

$scope.$on('valuesUpdated', function(){
    $scope.Name = dataGrabber.Name;
    $scope.Address = dataGrabber.Address;       
    window.print();
});

鑒於您提供的信息,我認為這是已知的范圍隱藏問題。

范圍繼承通常是簡單明了的,並且您通常甚至不需要知道它正在發生...直到您嘗試將2路數據綁定(即表單元素,ng-model)綁定到基元(例如,數字,字符串,布爾值)從子作用域內部在父作用域上定義。 它不能像大多數人期望的那樣工作。 發生的情況是子作用域獲得了自己的屬性,該屬性隱藏/陰影了同名的父屬性。 AngularJS並沒有這樣做-這就是JavaScript原型繼承的工作方式。 在這里了解更多...

解決方案是使用對象符號:

$scope.data.Name

或Controller作為控制器的符號。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM