Необходимо, чтобы метод возвращал { device_id: device_id }
если в cookies есть строка device_id
. Подскажите, пожалуйста, как это лучше реализовать в данном случае?
import { UAParser } from 'ua-parser-js';
export interface IDevice {
user_agent: string;
browser_name?: string;
browser_version?: string;
device_type?: string;
device_vendor?: string;
os_name?: string;
os_version?: string;
device_id?: number;
}
export class Device {
public user_agent: string;
public browser_name?: string;
public os_name?: string;
public device_type?: string;
public device_id?: number;
constructor(user_agent: string) {
this.user_agent = user_agent;
}
detect(): IDevice | null{
var parser = new UAParser();
this.browser_name = parser.setUA(this.user_agent).getBrowser().name;
this.os_name = parser.setUA(this.user_agent).getOS().name;
this.device_type = parser.setUA(this.user_agent).getDevice().type;
return {
user_agent: this.user_agent,
browser_name: this.browser_name,
os_name: this.os_name,
device_type: this.device_type
}
}
}
Для работы с cookie в Angular вы можете использовать ngx-cookie-service
app.module.ts
...
import { CookieService } from 'ngx-cookie-service';
@NgModule({
...
providers: [ CookieService ],
})
device.component.ts
import { UAParser } from 'ua-parser-js';
import { CookieService } from 'ngx-cookie-service';
constructor(user_agent: string, cookieService: CookieService) {
...
}
detect() {
...
this.device_id = this.cookieService.get('device_id') || null;
}
setDeviceId(device_id: string): void {
this.cookieService.set('device_id', device_id);
}
checkDeviceId(): boolean {
this.cookieService.check('device_id');
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
кому-то вечера или ночи, все вам ребята! Я постараюсь объяснить, чтобы вы меня понялиИтак в качестве образца я залил на тестовый домен html сайт
Каким образом можно реализовать такую вещь: при копирование ссылки с какого-то сайта и вставки в соц сеть, чтобы отображался блок с минимальной...