правка
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, public renderer: Renderer2,
private el: ElementRef private el: ElementRef
) { ) {
setTimeout(() => { // setTimeout(() => {
this.renderer.listen('window', 'beforeinstallprompt', (e) => { // this.renderer.listen('window', 'beforeinstallprompt', (e) => {
e.preventDefault(); // e.preventDefault();
console.log('#: ', e); // console.log('#: ', e);
this.deferredPrompt = e; // this.deferredPrompt = e;
// });
}); // this.renderer.listen('window', 'appinstalled', (evt) => {
this.renderer.listen('window', 'appinstalled', (evt) => { // console.log('INSTALLED!!!');
console.log('INSTALLED!!!'); // });
}); // this.getTypeDevice();
this.getTypeDevice(); // }, 0);
// if (
// (this.deviceType == 'android' && this.deferredPrompt) ||
// this.deviceType == 'ios'
// ) {
// console.log(this.deviceType);
// console.log(this.deferredPrompt);
}, 0) // this.el.nativeElement.style.display = 'block';
if ( // }
!( }
(this.deviceType == 'android' && this.deferredPrompt) ||
this.deviceType == 'ios'
)
) {
console.log(this.deviceType);
console.log(this.deferredPrompt);
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() { getTypeDevice() {
const userAgent = window.navigator.userAgent.toLowerCase(); const userAgent = window.navigator.userAgent.toLowerCase();

View File

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

View File

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