![](/img/trans.png)
[英]$scope variable inside the function is not getting updated in angular js
[英]why $scope variable inside directive is not getting updated?
我已經為使用角的高圖做了指令,正在渲染地圖。 我需要將最終配置的對象傳遞回控制器。 因此,我在指令中這樣分配,
$timeout(function() {
scope.mapconfigured = mapConfig;
});
最初,我這樣定義控制器,
app.controller('mainCtrl', function($scope, DB) {
$scope.mydata = DB.getStatesData();
$scope.mapconfigured = {};
}
但是mapconfigured變量沒有在指令中更新,並且控制器也沒有打印我確切需要的內容。
我也最初是將mapconfigured變量分配給指令
<my-map mapconfigured="mapconfigured" mydata="mydata" header="'Highmap Demo'"></my-map>
這是什么問題? 這是應用程序
預期的輸出:
我需要將mapConfig對象分配給控制器內部范圍的mapconfigured變量。
那是因為您在作用域指令中使用了mapconfigured ,而在鏈接指令中您試圖用數據定義mapConfigured 。
替換為以下代碼:
$timeout(function() {
scope.mapconfigured = mapConfig;
});
正如Ivan在評論中提到的那樣,它是一個錯別字,作用域變量我在控制器中聲明為“ mapconfigured”,但在指令i中卻分配給了“ mapConfigured”,因此像這樣工作
<my-map mapconfigured="mapconfigured" mydata="mydata" header="'Highmap Demo'"></my-map>
$timeout(function() {
scope.mapconfigured = mapConfig;
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.