App
App
Application wrapper for some global usages.
가져오기import{ App }from"antd"; |
버전5.1.0 이후 지원됨 |
가져오기import{ App }from"antd"; |
버전5.1.0 이후 지원됨 |
.ant-app element.message/notification/Modal from useApp without writing contextHolder manually.App provides upstream and downstream method calls through Context, because useApp needs to be used as a subcomponent, we recommend encapsulating App at the top level in the application.
import React from 'react';import { App } from 'antd';const MyPage: React.FC = () => {const { message, notification, modal } = App.useApp();message.success('Good!');notification.info({ message: 'Good' });modal.warning({ title: 'Good' });// ....// other message, notification, modal static functionreturn <div>Hello word</div>;};const MyApp: React.FC = () => (<App><MyPage /></App>);export default MyApp;
Note: App.useApp must be available under App.
The App component can only use the token in the ConfigProvider, if you need to use the Token, the ConfigProvider and the App component must appear in pairs.
<ConfigProvider theme={{ ... }}><App>...</App></ConfigProvider>
<App><Space>...<App>...</App></Space></App>
// Entry componentimport { App } from 'antd';import type { MessageInstance } from 'antd/es/message/interface';import type { ModalStaticFunctions } from 'antd/es/modal/confirm';import type { NotificationInstance } from 'antd/es/notification/interface';let message: MessageInstance;let notification: NotificationInstance;let modal: Omit<ModalStaticFunctions, 'warn'>;export default () => {const staticFunction = App.useApp();message = staticFunction.message;modal = staticFunction.modal;notification = staticFunction.notification;return null;};export { message, modal, notification };
// sub pageimport React from 'react';import { Button, Space } from 'antd';import { message } from './store';export default () => {const showMessage = () => {message.success('Success!');};return (<Space><Button type="primary" onClick={showMessage}>Open message</Button></Space>);};
Common props ref:Common props
This component is available since
antd@5.1.0.
| Property | Description | Type | Default | Version |
|---|---|---|---|---|
| component | Config render element, if false will not create DOM node | ComponentType | false | div | 5.11.0 |
| message | Global config for Message | MessageConfig | - | 5.3.0 |
| notification | Global config for Notification | NotificationConfig | - | 5.3.0 |
<App component={false}>Make sure the App component is a legit React component string, so when you're turning on CSS variables, there's a container to hold the CSS class name.