Package Exports
- @e22m4u/js-path-trie
- @e22m4u/js-path-trie/src/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@e22m4u/js-path-trie) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
@e22m4u/js-path-trie
ES-модуль маршрутизации на основе префиксного дерева.
- Использует path-to-regexp синтаксис.
- Поддерживает параметры маршрута.
Установка
npm install @e22m4u/js-path-trie
Пример
add(pathTemplate: string, value: unknown)
- добавить значение к новому маршрутуmatch(path: string)
- поиск значения по заданному маршруту
const trie = new PathTrie();
// добавление маршрутов выполняется
// методом "add", который принимает
// шаблон маршрута и его значение
trie.add('/foo/bar', yourValue1);
trie.add('/foo/:p1/bar/:p2', yourValue2);
// для поиска значения используется
// метод "match", который возвращает
// значение маршрута и его параметры
trie.match('/foo/bar');
// {
// value: yourValue1,
// params: {}
// }
// если маршрут имеет параметры,
// то их значения вернуться
// в результате поиска
trie.match('/foo/10/bar/20');
// {
// value: yourValue2,
// params: {p1: 10, p2: 20}
// }
// если маршрут не найден,
// то возвращается "undefined"
trie.match('/foo/bar/baz');
// undefined
Отладка
Что бы включить вывод логов, требуется определить переменную
окружения DEBUG
перед запуском.
DEBUG=jsPathTrie* npm run test
Тестирование
npm run test
Лицензия
MIT