есть ли какие-либо способы определить, какое приложение в настоящее время находится на какой платформе, например, мобильной или веб -?

#angular #angular6

Вопрос:

Я должен запускать свое приложение одновременно на веб-и мобильной платформах. Но нужно ли знать, что платформа мобильная или веб -?. В зависимости от того, какая платформа переключается, мне приходится немного изменять код в зависимости от платформы.

если у кого-то есть какие-либо другие мнения по этому поводу, пожалуйста, дайте мне знать.

Ответ №1:

https://material.angular.io/cdk/platform/overview Угловой CDK содержит эту информацию

Комментарии:

1. спасибо за ваш ответ. это не соответствует моим требованиям. но у меня есть метод «navigator.UserAgent» для обнаружения устройства.

Ответ №2:

 .is-desktop {
display: block !important;
}

.is-mobile {
display: none !important;
}
@media screen and (max-width: 767px) {
.is-desktop {
display: none !important;
}

.is-mobile {
display: block !important;
}
}
<div class="is-mobile">Code for mobile</div>
<div class="is-desktop">Code for desktop/web</div>
 

И если вы хотите сделать это в угловом машинописном виде, вы можете сделать это так

 import {BreakpointObserver} from '@angular/cdk/layout';
isSmallScreen = false;
constructor(breakpointObserver: BreakpointObserver) {
this.isSmallScreen = breakpointObserver.isMatched('(max-width: 768px)');
}
// and import this in app.module imports array
import {LayoutModule} from '@angular/cdk/layout';
imports:[LayoutModule]