पर अपडेट नहीं हो मैं अपने कोणीय आवेदन के लिए कोणीय 1.6.5 का उपयोग कर रहा है और एक बहुत ही अजीब व्यवहार देखा।कोणीय एनजी स्तरीय एनजी-व्यू
बात मैं हासिल करना चाहते हैं: जब ngroute बदला जा रहा है, मैं, वर्तमान दृश्य से सक्रिय वर्ग निकालना होगा पूरा करने के लिए है, तो नए दृश्य में सक्रिय वर्ग को जोड़ने छुट्टी एनीमेशन के लिए प्रतीक्षा करें।
मैं config में एप्लिकेशन और routs की स्थापना की है।
var app = angular.module('app', ['ngAnimate', 'ngRoute']);
app.config(function ($routeProvider) {
$routeProvider
.when('/', {
templateUrl:"home.html",
reloadOnSearch:false
})
.when('/about-us', {
templateUrl:"about.html",
reloadOnSearch:false
})
.when('/contact', {
templateUrl:"contact.html",
reloadOnSearch:false
})
.otherwise({
template : "<h1>None</h1><p>Nothing has been selected</p>"
});
});
मैं एक सेवा है जहाँ मैं एनीमेशन के समय और देखने का बूलियन का संकेत दृश्यता की दुकान है:
app.service('animationProperties', function() {
this.animationTimings = {
views: 1000
};
this.visibility = {
view : false
};
});
मैं सरल डिबगिंग समारोह और एक onRouteChangeStart समारोह के साथ एक मुख्य नियंत्रक है कि वर्तमान से सक्रिय वर्ग को दूर करना चाहिए (देखें दृश्यता बूलियन झूठे बनाकर) विचार:
app.controller('MainCtrl', function ($scope, $window, $location,
animationProperties) {
$scope.animationProperties = animationProperties;
$scope.$on('$routeChangeStart',function() {
animationProperties.visibility.view = false;
});
$scope.toggleActive = function(){
$scope.animationProperties.visibility.view = !$scope.animationProperties.visibility.view;
}
});
और अंत में, ngAnimate छुट्टी एनीमेशन को पूरा करने के लिए इंतजार कर रहा है कि, तो (किया() विधि के साथ) वर्तमान दृश्य दूर करता है और दृश्यता बूलियन सच बनाकर फिर से नए दृश्य में प्रवेश करती है:
app.animation('.view', function($timeout, animationProperties) {
return {
enter: function(element, done) {
$timeout(function() {
animationProperties.visibility.view = true;
$timeout(function() {
done();
}, animationProperties.animationTimings.views);//Wait to enter
},animationProperties.animationTimings.views); //Wait for leave function
},
leave: function(element, done) {
$timeout(function() {
done();
}, animationProperties.animationTimings.views);
}
}
});
यहाँ plunker
है जब आप पृष्ठों स्विचन पहली बार (नेविगेशन से) आपको लगता है कि देखेंगे सबकुछ ठीक काम करता है, लेकिन पृष्ठों पर जाने पर दूसरी बार क्लास अपडेट नहीं हो रहा है, इसलिए एनीमेशन नहीं खेला जाता है। डिबगिंग करते समय आप स्पष्ट रूप से देख सकते हैं कि दृश्यता बूलियन सही ढंग से अपडेट किया गया है, लेकिन छोड़ने के दृश्य पर एनजी-क्लास अपडेट नहीं हो रहा है।
आपकी मदद की बहुत सराहना की जाएगी !!!