Начало работы
Эта документация описывает API 1.0.0-beta. Установите beta-версию, чтобы использовать фабрику и расширения.
sh
npm install undevice@betash
pnpm add undevice@betash
yarn add undevice@betash
bun add undevice@betaПервый вызов
Создайте детектор один раз, затем передавайте заголовки каждого входящего запроса в detect():
ts
import { undevice } from "undevice";
const { detect } = undevice();
const device = detect({ headers: request.headers });
device.isMobile;
device.isTablet;
device.isDesktop;undevice() возвращает замороженный объект с методом detect. Каждый вызов detect() возвращает новый замороженный UndeviceResult с флагами.
Библиотека не изменяет входные данные и не обращается неявно к контексту запроса или глобальным объектам браузера.
User-Agent
В браузере передайте navigator.userAgent:
ts
import { undevice } from "undevice";
const { detect } = undevice();
const device = detect({ userAgent: navigator.userAgent });Чтобы переопределить User-Agent:
ts
const device = detect({
headers: request.headers,
userAgent: customUserAgent,
});При SSR используйте на клиенте результат, полученный на сервере, чтобы избежать расхождений при гидратации.