Android 移动设备上的“角度材质”对话框动画速度非常慢
在我的Xperia M5上运行棉花糖,angular material的对话框的打开动画在chrome中非常糟糕,即使在chrome上也是如此。有没有办法只在手机上为对话框禁用动画 我已经看过了,但它建议禁用所有动画,CSS解决方案不起作用Android 移动设备上的“角度材质”对话框动画速度非常慢,android,angular,google-chrome,animation,angular-material2,Android,Angular,Google Chrome,Animation,Angular Material2,在我的Xperia M5上运行棉花糖,angular material的对话框的打开动画在chrome中非常糟糕,即使在chrome上也是如此。有没有办法只在手机上为对话框禁用动画 我已经看过了,但它建议禁用所有动画,CSS解决方案不起作用 另外,我正在运行Angular 5,所有内容都已更新为稳定状态。这就是我在android设备上禁用对话框动画所做的 我使用Ng2DeviceService来确定它是否是android设备。可以很容易地修改以查找其他条件 这对angular 5有效。不确定旧版
另外,我正在运行Angular 5,所有内容都已更新为稳定状态。这就是我在android设备上禁用对话框动画所做的 我使用Ng2DeviceService来确定它是否是android设备。可以很容易地修改以查找其他条件 这对angular 5有效。不确定旧版本 我在app.module.ts中完成了这一切 添加导入
import { AnimationDriver, ɵWebAnimationsDriver, ɵNoopAnimationDriver } from '@angular/animations/browser';
创建一个动画工厂
/**
* Disable animations for dialogs on slow devices
* @returns {WebAnimationsDriver}
*/
const animationFactory = () => {
const deviceService = new Ng2DeviceService();
const noop = AnimationDriver.NOOP;
const driver = new ɵWebAnimationsDriver();
const originalAnimate = driver.animate;
const isAndroid = deviceService.os === 'android';
let disableComplexAnimations = false;
if (isAndroid) {
disableComplexAnimations = true;
}
driver.animate = (element: any, keyframes: {
[key: string]: string | number;
}[], duration: number, delay: number, easing: string, previousPlayers?: any[]) => {
if (disableComplexAnimations && element && element.nodeName === 'MAT-DIALOG-CONTAINER') {
return noop.animate(element, keyframes, duration, delay, easing, previousPlayers);
} else {
return originalAnimate(element, keyframes, duration, delay, easing, previousPlayers);
}
};
return driver;
};
注册在您的提供商列表中:
providers: [
{ provide: AnimationDriver, useFactory: animationFactory },
],
你找到解决办法了吗?@gustavariasméndez,没有,还没有:/你在v9上遇到了同样的问题吗?任何前缀为
ɵ
的令牌都不应该使用。它们被认为是私人的,随时可能破裂。