правка
This commit is contained in:
gofnnp 2023-01-13 03:02:49 +04:00
parent 88b0d92300
commit c71e2d4c48
3 changed files with 48 additions and 23 deletions

View File

@ -19,33 +19,54 @@ export class DownloadAppDirective implements OnInit {
public renderer: Renderer2,
private el: ElementRef
) {
setTimeout(() => {
this.renderer.listen('window', 'beforeinstallprompt', (e) => {
e.preventDefault();
console.log('#: ', e);
this.deferredPrompt = e;
});
this.renderer.listen('window', 'appinstalled', (evt) => {
console.log('INSTALLED!!!');
});
this.getTypeDevice();
// setTimeout(() => {
// this.renderer.listen('window', 'beforeinstallprompt', (e) => {
// e.preventDefault();
// console.log('#: ', e);
// this.deferredPrompt = e;
// });
// this.renderer.listen('window', 'appinstalled', (evt) => {
// console.log('INSTALLED!!!');
// });
// this.getTypeDevice();
// }, 0);
// if (
// (this.deviceType == 'android' && this.deferredPrompt) ||
// this.deviceType == 'ios'
// ) {
// console.log(this.deviceType);
// console.log(this.deferredPrompt);
}, 0)
if (
!(
(this.deviceType == 'android' && this.deferredPrompt) ||
this.deviceType == 'ios'
)
) {
console.log(this.deviceType);
console.log(this.deferredPrompt);
// this.el.nativeElement.style.display = 'block';
// }
}
this.el.nativeElement.style.display = 'none';
ngOnInit(): void {
this.getTypeDevice()
if (this.deviceType === 'ios') {
this.el.nativeElement.style.display = 'block';
}
}
@HostListener('window:beforeinstallprompt', ['$event'])
onBeforeInstallPrompt(e: any) {
console.log(e);
e.preventDefault();
this.deferredPrompt = e;
}
@HostListener('window:appinstalled', ['$event'])
onAppInstalled(e: any) {
console.log(e);
// Prevent Chrome 67 and earlier from automatically showing the prompt
e.preventDefault();
// Stash the event so it can be triggered later.
this.deferredPrompt = e;
if (this.deferredPrompt) {
this.el.nativeElement.style.display = 'block';
}
}
ngOnInit(): void {}
getTypeDevice() {
const userAgent = window.navigator.userAgent.toLowerCase();

View File

@ -57,7 +57,7 @@
</li>
</ng-container>
<li
class="woocommerce-MyAccount-navigation-link"
class="woocommerce-MyAccount-navigation-link download-app"
appDownloadApp
>
<div class="container">

View File

@ -44,6 +44,10 @@
// border-radius: 7px 0 0 7px;
}
&.download-app {
display: none;
}
.container {
display: flex;
align-items: center;