mirror of https://github.com/alibaba/ice.git
* chore: close announcement * docs: add doc for request * docs: rename title for request * docs: add.tsx * docs: request doc * refactor: change request to requestConfig * chore: change usage and documentation * docs: optimize doc * docs: update |
||
|---|---|---|
| .. | ||
| src | ||
| CHANGELOG.md | ||
| README.md | ||
| package.json | ||
| tsconfig.json | ||
README.md
ICE Request Plugin
Usage
Install from npm.
$ npm i @ice/plugin-request -S
Add plugin.
import { defineConfig } from '@ice/app';
import request from '@ice/plugin-request';
export default defineConfig({
plugins: [
request(),
],
});
API
request
import { request } from 'ice';
export async function getUser(id) {
return await request(`/api/user/${id}`);
}
useRequest
import { useEffect } from 'react';
import { useRequest } from 'ice';
export default function Home() {
const {
data,
error,
loading,
request
} = useRequest(service.getUser);
useEffect(() => {
request();
}, []);
if (error) {
return <div>failed to load</div>;
}
if (!data || loading) {
return <div>loading...</div>;
}
return (
<h2 className={styles.title}>
Name: {data.name} Age: {data.age}
</h2>
);
}