Skip to content

Начало работы ​

Эта документация описывает API 1.0.0-beta. Установите beta-версию, чтобы использовать фабрику и расширения.

sh
npm install undevice@beta
sh
pnpm add undevice@beta
sh
yarn add undevice@beta
sh
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 используйте на клиенте результат, полученный на сервере, чтобы избежать расхождений при гидратации.

Released under the MIT License.