@phaoerjs/jsweb
v1.1.4
Published
A collection of tools for JavaScript
Downloads
2
Maintainers
Readme
jsweb
- A collection of tools for JavaScript
Installation
npm i @phaoerjs/jsweb
Usage
- CommonJs
const jsweb = require("@phaoerjs/jsweb");
- ESM
import { Request } from "@phaoerjs/jsweb";
- Html
<script src="dist/index.js"></script>
<script>
console.log(jsweb);
</script>
Api
Request
http request client base on axios
Configuring
- Request.config({ baseURL = "", headers = {}, succCodeName = "code", succCode, errMsgName = "msg" }); When baseURL and headers are configured, each Request instance will be automatically equipped with this configuration. By default, as long as the HTTP status is 200, the complete data from the API will be returned. You can set succCode to define the status code indicating a successful interface response. The default name for the interface status code, succCodeName, is code, and the default name for the interface information is errMsgName, which is msg.
Creating a Request Instance | parameter | type | default | isrequired | | :------------ | :----------- | :---------- | :------------- | |
url
| string | '' | true | |method
| string | get | false | |data
| object | {} | false | |cancel_tip
| boolean | false | false | |option
| axios.option | {} | false |... useEffect(() => { const req = new Request({ url: "xxxxxxx", data: { page: 1, page_size: 10 }, cancel_tip: true }); const getData = async () => { try { const res = await req.send(); // When a request is canceled, by default, the console will print 'request is canceled'. When cancel_tip is set to true, it will return { request_is_cancel: true }. if(res.request_is_cancel) { console.log("request cancel"); } else if(res.code === 200) { //do something } else { throw new Error(res.msg); } } catch (error) { message.error(catchErrorHandle(error)); } } getData(); return () => { req.cancel(); } }, []) ...
catchErrorHandle
you can use this method to resolve all error types
catchErrorHandle(error, customErrorProperty || "message");
getParam
getParam("id", "https://xxxxxxxxxxxxxxx?id=123" || window.location.href); // 123
getTerminal
getTerminal(); // { mobile: true, ios: true, android: false, ....}
dateFormate
dateFormate("yyyy-MM-dd HH:mm:ss", date || null); // 2023-xx-xx xx:xx:xx
getEndTime
getEndTime("2023-xx-xx xx:xx:xx", timestamp || null); // { str: "x天x时x分x秒", day: "x", hour: "x", min: "x", sec: "x" }
Base64Encode
Base64Encode(1111); // MTExMTE=
Base64Decode
Base64Decode("MTExMTE="); // 11111
throttle
throttle(fn, wait);
debounce
debounce(fn, wait, immediate);