npm i @phaoerjs/jsweb
- CommonJs
const jsweb = require("@phaoerjs/jsweb");
- ESM
import { Request } from "@phaoerjs/jsweb";
- Html
<script src="dist/index.js"></script>
<script>
console.log(jsweb);
</script>
-
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);