我做了一個包括路線圖的android遊戲。 (5個世界,7停止每個地圖)範圍設置後啓動svg動畫 - angularjs - svg
如果級別爲3的用戶進行動畫處理的行走停止3.
我建立這個SVG動畫
<animateMotion id="test" begin="0.5s" dur="3s" repeatCount="0" rotate="0" path="{{animate}}" fill="freeze"/>
它工作正常,直到我做出的if else功能,其範圍應該使用。(每個路線圖有7站/水平,我的水平是3,它的作用域world1這樣的性質以及連接到頁面)
information.once("value", function(snapshot) {
var data = snapshot.val();
if (data.level < 7) {
console.log("world1");
$scope.animate = "M0,0 q225,150 0,200";
}
else if (data.level > 7) {
console.log("world2")
$scope.animate = "M0,0 0,0 0,0";
}
});
我覺得牛逼他的問題是,在if語句完成之前,svg會加載正確的範圍。
有什麼方法可以使用角度來啓動動畫嗎?而不是自動載入播放。
(在information.once和數據快照是火力點我的用戶數據的存儲位置)
這非常含糊。什麼是調用information.once()的上下文?參見[創建一個mcve](http://stackoverflow.com/help/mcve)和[如何提問](http://stackoverflow.com/help/how-to-ask)。另外,爲了通知Angular編譯器,您需要在異步設置數據時調用$ scope.apply()或$ timeout()。請參閱[處理異步操作](https://www.firebase.com/docs/web/libraries/angular/guide/intro-to-angularfire.html#section-async-intro)。 Docs FTW。 – Kato