Url parser to extract named and query params
npm install url-params-parserUrlParsers provides you with methods to parse named params and query params easily.
This package relies heavily in the native URL object (no need to reinvent the wheel). It just adds some extra methods to handle params (both query and named params).
``:javascript
import { UrlParser } from 'url-params-parser'
// UrlParser(url, placeholder)
const urlParser = UrlParser(
"https://address.com/employees/show/1234/developer/reports/asc",
"/employees/show/:id/:title/reports/:order"
)
urlParser.namedParams
// returns { id: "1234", title: "developer", order: "asc" }
)
`
To install Url Parser:
with npm
`bash`
npm i url-params-parser
with Yarn
`bash`
yarn add url-params-parser
Initialize the object with a route and a placeholder. Example:
`:javascript
import { UrlParser } from 'url-params-parser'
// UrlParser(url, placeholder)
const urlParser = UrlParser(
"https://address.com:99/employees/show/1234/developer/reports/asc/?climate=change&sea-level=rising#danger",
"/employees/show/:id/:title/reports/:order"
)
`
Returns an object with all the named params and their values
`:javascript`
urlParser.namedParams
// returns { id: "1234", title: "developer", order: "asc" }
Returns an array with all the named param keys
`:javascript`
urlParser.namedParamsKeys
// returns ["id", "title", "order"]
Returns an array with all the named param values
`:javascript`
urlParser.namedParamsValues
// returns ["1234", "developer", "asc"]
Returns an object with all query params and their values
`:javascript`
urlParser.queryParams
// returns { climate: "change", "sea-level": "rising" }
Returns an array with all the query param values
`:javascript`
urlParser.queryParamsKeys
// returns [ climate, "sea-level" ]
Returns an array with all the query param values
`:javascript`
urlParser.queryParamsValues
// returns [ "change", "rising" ]
Returns an array with all the elements of a pathname
`:javascript`
urlParser.pathNames
// returns [ "employees", "show", "1234", "developer", "reports", "asc" ]
Wrapper for URL().hash
`:javascript`
urlParser.hash
// returns "#danger"
Wrapper for URL().host
`:javascript`
urlParser.host
// returns "address.com:99"
Wrapper for URL().hostname
`:javascript`
urlParser.hostname
// returns "address.com"
Wrapper for URL().port
`:javascript`
urlParser.port
// returns "99"
Wrapper for URL().pathname
`:javascript`
urlParser.pathname
// returns "/employees/show/1234/developer/reports/asc/"
Wrapper for URL().protocol
`:javascript`
urlParser.protocol
// returns "https:"
Wrapper for URL().search
`:javascript``
urlParser.search
// returns "?climate=change&sea-level=rising"
URL Parser has been developed by Jorge Alvarez.