2016-09-17 69 views
2

我已经为使用角度的高地图制作了一个指令,地图得到渲染。我需要将最终配置的对象传递回控制器。因此,我很分配这样的指令,

$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> 

什么是这里的问题?这里是APPLICATION

预期输出:

我需要分配mapConfig对象mapconfigured我的控制器内的范围变量。

+0

等等。所以mapconfigured必须是一个空字典?如果使用'DB.getStatesData()'暗示您正在加载数据异步,那么您需要为其进行回调。 – IvRRimUm

+0

我已经放了一个空物体,所以没关系 – Sajeetharan

+0

'''控制器也没有打印出我确切需要的东西。“那么它在打印什么? – IvRRimUm

回答

0

如伊万在注释中提到它是一个错字,范围变量i在控制器为“mapconfigured”声明但在指令我分配给“mapConfigured” ,像这样改变工作

<my-map mapconfigured="mapconfigured" mydata="mydata" header="'Highmap Demo'"></my-map> 

$timeout(function() { 
    scope.mapconfigured = mapConfig; 
    }); 
0

那是因为你使用范围指令mapconfigured,并在链接指令你试图定义mapConfigured数据。

替换此代码:

$timeout(function() { 
     scope.mapconfigured = mapConfig; 
    }); 
+0

它已经回答了 – Sajeetharan

+0

@Sajeetharan在评论中的答案很难找到,并让这个问题显示为没有答案。如果在评论中帮助你的人没有,我想你甚至应该写下并接受你的答案。 –

相关问题