1.0.0 • Published 7 years ago

router-segment v1.0.0

Weekly downloads
-
License
MIT
Repository
-
Last release
7 years ago

#Router-Segment

##This Tool allow process segment of the URL

Esta herramienta util tanto para rutas del servidor como del cliente, pues su unica tarea es procesar los segemntos de una dirrecion y tratarlo para ver si coincide con una determinada ruta. Por ejemplo, en librerias de router para el cliente que trabajar con el hash-tag, usted puede collecionar componentes con una propiedad url, que tenga parametros en la ruta tipo: to/path/:id y teniendo una peticion to/path/344 esta libreria le devolvera un objecto con la propiedad id con el valor correspondiente, de la petición. Es de tener en cuenta que la flexibilidad que porta esta libreria para hacer modulos de rutas es la estandar, así como las rutas de Express, Connect, y Vue Router, por no mencionar otros.

var segment = require('router-segment');

currentUrl = "/to/path/book/345";

collection = [
	{path:'/to',resource:Object},		//target num 1
	{path:'/to/elm',resource:Object},		//target num 2
	{path:'/home',resource:Object},		//target num 3
	{path:'/to/path/:category/:id',resource:Object},		//target num 4
	{path:'/login',resource:Object}		//target num 5
];

var result = segment(collection,currentUrl); /*  ----> return {
	target:{//target 4},
	param:{category:'book',id:'345'}
}

*/

console.log(result);

//if no have match return {target:false}

Si tienes una determinada logica de componetes más, es posible que tu url para localizar el componentes, no se encuentre en una propiedad path, para este problema tienes un tercer parametro que es el nombre de la propiedad que deberá ser evaludad para localizar un determinado objetivo.

El uso de esta libreria es minimalista, es muy rapida y eficiente para localizar objectos basados en sistema de rutas.

Esta libreria aun no soporta expresiones regulares, se quiere hacer una implementación en el futuro, mientras se encuentra en desarrollo, al igual que su documentación, aunque este ejemplo especifica bastante bien su funcionamiento.

Esta libreria puede ser usada para crear sistema de rutas pequeños que no requieran validar expresiones regulares, pero perfectamente si que pueden validar rutas con parametros de esquema :params.

1.0.0

7 years ago