添加自定义工具栏项
应用程序模板使用 DevExtreme Toolbar 组件,Toolbar 是 Header 组件的一部分,其配置位于 srccomponentsheaderheader.js 文件中。 要添加自定义工具栏项目,请打开此文件并在工具栏内添加一个 Item 元素。
以下代码向工具栏添加了一个搜索按钮:
header.js
// ...export default ({ ..., search }) => (<header className={'header-component'}><Toolbar className={'header-toolbar'}>{/* ... */}<Item location="after"><Button icon="search" onClick={search} /></Item>{/* ... */}</Toolbar></header>)
side-nav-outer-toolbar.js
// ...export default function ({ title, children }) {// ...const search = useCallback(() => {console.log("search");}, []);return (<div className={'side-nav-outer-toolbar'}><Header ...search={search}/>{/* ... */}</div>);}
在上面的代码中,按钮单击处理程序在 SideNavOuterToolbar 组件中声明。 当使用外部工具栏布局时,此组件适用。 如果应用程序使用内部工具栏布局,请将相同的代码添加到 SideNavInnerToolbar 组件。
配置主题
切换主题
DevExtreme React 模板为视图内容使用一个主主题,为导航菜单使用一个附加主题(色板)。 要切换到另一个主题,请打开 srcthemesmetadata.base.json 或 srcthemesmetadata.additional.json 文件并为 baseTheme 字段指定一个主题名称:
metadata.base.json
{// ..."baseTheme": "material.blue.light",// ...}
运行以下命令来重建主题:
npm run build-themes
创建自定义主题
您可以使用 DevExtreme ThemeBuilder 基于预定义的主题创建自定义主题,请按照以下步骤操作:
1. 将 srcthemesmetadata.base.json 或 srcthemesmetadata.additional.json 导入 ThemeBuilder。
2. 自定义主题。
3. 将主题元数据导出到初始文件。
运行以下命令来重建主题:
npm run build-themes
应用色板
色板是与主要配色方案一起使用的辅助配色方案。
在 DevExtreme React 模板中,颜色样本应用于导航菜单并在 srcthemesmetadata.additional.json 文件中配置。 要将这个色板应用到一个元素,添加 dx-swatch-additional 类到这个元素:
JSX
<div className={'dx-swatch-additional'}><!-- Your content here --></div>
将主题变量应用于自定义元素
主题变量在 srcthemesgeneratedvariables.base.scss 和 srcthemesgeneratedvariables.additional.scss 文件中定义,将它们应用于自定义元素,以便元素与应用程序的其余部分具有统一的外观。
以下代码应用 $base-accent 变量作为 my-element 的背景颜色:
SCSS
// Your SCSS file@import "../../../themes/generated/variables.base.scss";#my-element {background-color: $base-accent;}
验证
DevExtreme React 应用程序包括身份验证 UI 和 API。 配置客户端路由,以便未经身份验证的用户只能导航到身份验证页面,这些页面允许用户登录、创建新帐户或重置密码。
身份验证页面由 UnauthenticatedContent.js 组件呈现,应用程序的其余部分由 Content.js 组件呈现。
重要提示:不要依赖客户端路由来保护您的应用程序免受未经授权的访问,始终在后端验证用户凭据。
与后端集成
后端请求的存根身份验证函数位于 srcapiauth.js 文件中,更新这些函数以向您的后端发出实际请求。
每个函数都返回一个具有以下字段的对象:

获取用户信息
用户信息存储在 contextsauth.js 模块中声明的上下文中。
要从应用程序的任何部分访问用户信息,请使用 useAuth hook。 这个hook返回一个具有以下字段的对象:
以下代码使用 useAuth hook访问用户信息:

JSX
import { useAuth } from './contexts/auth';export default function() {const { user } = useAuth();if (user) {// User is authenticated...}...}
创建一个空的应用程序
要生成没有视图和导航菜单的应用程序,请使用 –empty 标志:
npx devextreme-cli new react-app app-name –empty
DevExtreme | 下载试用
DevExpress技术交流群5:742234706 欢迎一起进群讨论

标签:
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!