我正在使用Dark Sky的Api制作天气页面,并尝试使用Skycons。我添加了Skycons作为一个类,而不是id。当我像这样使用它时:
<canvas class="fog" width="50" height="50"></canvas
一切正常,但当我尝试使用它时,使用weatherCtrl.demoIcon =“fog”:
<canvas class="{{ weatherCtrl.demoIcon }}" width="50" height="50"></canvas>
它没有显示图标。我尝试了以下方法:
<canvas ng-class="weatherCtrl.demoIcon" width="50" height="50"></canvas> <canvas class="ng-class:{{ weatherCtrl.demoIcon }}" width="50" height="50"></canvas>
有趣的是,虽然图标没有显示,但是我在CSS中添加了.fog的边框,它显示了一个空白方块。
skycons JavaScript是:https://github.com/darkskyapp/skycons/blob/master/skycons.js
答案 0 :(得分:0)
我找到了问题的答案。使用
$ timeout(function(){ for(i = list.length; i--;){ var weatherType = list [i], elements = document.getElementsByClassName(weatherType); for(e = elements.length; e--;){ icons.set(elements [e],weatherType); } } },0);
将在评估表达式后初始化画布,并将解决问题