当前位置: 首页 > news >正文

合肥网站建设创优涞水县住房和城乡建设局网站

合肥网站建设创优,涞水县住房和城乡建设局网站,wordpress相关推荐,上海网站开发报价创建文件路径并注册register路由 在pages/User下创建Register文件夹并创建index.tsx文件 然后在config/routes创建register注册路由。注册完后,当在登陆页面点击注册按钮时就可以跳转到此注册页面而不会报404了。 export default [{path: /user,layout: false,rou…

创建文件路径并注册register路由

在pages/User下创建Register文件夹并创建index.tsx文件

然后在config/routes创建register注册路由。注册完后,当在登陆页面点击注册按钮时就可以跳转到此注册页面而不会报404了。

export default [{path: '/user',layout: false,routes: [{name: '登录', path: '/user/login', component: './User/Login'},{name: '注册', path: '/user/register', component: './User/Register'}],},]

调用ProForm创建登陆页面

import Footer from '@/components/Footer';
import {login, register} from '@/services/ant-design-pro/api';
import {getFakeCaptcha} from '@/services/ant-design-pro/login';
import {AlipayCircleOutlined,LockOutlined,MobileOutlined,TaobaoCircleOutlined,UserOutlined,WeiboCircleOutlined,
} from '@ant-design/icons';
import {LoginForm, ProForm,ProFormCaptcha,ProFormCheckbox,ProFormText,
} from '@ant-design/pro-components';
import {useEmotionCss} from '@ant-design/use-emotion-css';
import {FormattedMessage, history, SelectLang, useIntl, useModel, Helmet} from '@umijs/max';
import {Alert, message, Tabs} from 'antd';
import Settings from '../../../../config/defaultSettings';
import React, {useState} from 'react';const Register: React.FC = () => {const display = 'flex'const containerClassName = useEmotionCss(() => {return {display: display,flexDirection: 'column',height: '100vh',overflow: 'auto',backgroundImage:"url('https://mdn.alipayobjects.com/yuyan_qk0oxh/afts/img/V-_oS6r-i7wAAAAAAAAAAAAAFl94AQBr')",backgroundSize: '100% 100%',};});const handleSubmit = async (values: any) => {const msg = await register(values);message.success('注册成功')history.push( '/user/login');};return (<div className={containerClassName}>{/*@umijs/plugin-helmet插件,实现动态修改HTML文档标签*/}<Helmet><title>{'注册页'}- {Settings.title}</title></Helmet><divstyle={{flex: '1',padding: '32px 0',width: '30%',marginLeft: '35%',textAlign: "center"}}><ProFormlayout={'horizontal'}onFinish={async (values) => handleSubmit(values)}submitter={{// 配置按钮文本searchConfig: {submitText: '注册',resetText: '重置',},}}autoFocusFirstInput><ProFormTextname="username"label="帐号"tooltip="最长为 24 位"placeholder="请输入帐号"/><ProFormTextname="email"label="邮箱"placeholder="请输入邮箱"/><ProFormText.Passwordname="password"label="密码"placeholder="请输入密码"/></ProForm></div><Footer/></div>);
};export default Register;

注意useEmotionCss方法:这是antdesign封装的一种css-in-js的解决方案,大概介绍下什么是css-in-js

css-in-js

那么首先介绍一下使用CSS的局限性,以及使用CSS- IN- JS的解决办法

  • 缺乏作用域:react是单页面项目,且以组件为单位,那么倾向于将同一个组件的HTML、CSS、JS集成在一起。这样的好处是组件与组件之间的css不会产生冲突不会覆盖,这就是作用域的概念。
  • 缺乏可移植性:将CSS文件集中在组件中,可以在使用组件时避免遗漏CSS文件
  • 缺乏动态功能:CSS无法通过条件决定给元素展示哪些样式,而将CSS写在JS文件中,可以用JS的动态能力给元素添加样式

而Emotion是使用JS编写CSS样式的库,其中@emotion/react 的 jsx 是一个增强的 React.createElement 方法,它给 React 元素添加了一个 css prop。

useEmotionCss

而useEmotionCss是@ant-design/use-emotion-css基于antd封装的一个基于emotion的hook。具体使用为首先声明一个const,返回值为cssFn。注意,我在使用useEmotionCss返回的css类型中引入了一个display(在函数外声明为'flex', 这就是css-in-js的优势了。

const display = 'flex'
const containerClassName = useEmotionCss(() => {return {display: display,flexDirection: 'column',height: '100vh',overflow: 'auto',backgroundImage:"url('https://mdn.alipayobjects.com/yuyan_qk0oxh/afts/img/V-_oS6r-i7wAAAAAAAAAAAAAFl94AQBr')",backgroundSize: '100% 100%',};});

ProForm高级表单

可以看见使用ProForm实现表单是很迅速的,基本只需要考虑需要的字段及其类型,并完成一个onFinish函数即可。 具体可以看Pro Components 关于ProForm的介绍。

最终实现的效果如下:

当点击注册并校验通过后,会跳转到/user/login 重新登陆。至此注册页面开发完毕。

http://www.yayakq.cn/news/857522/

相关文章:

  • 雅江网站建设网站开发 flex
  • 如何将网站开发成微信小程序国外设计网站怎么登陆
  • 大名网站建设费用简单的网站
  • 做网站主页上主要放哪些内容承接网站建设
  • 动易官方网站做瑞士网站
  • 陕西省建设局网站wordpress新闻
  • 专业制作彩铃网站成都微信网站建设报价
  • 网页美工设计的要点分别是什么seo的主要内容
  • 学做网站和推广要多久微信小程序公众平台
  • 给网站写教案做课件一节课多少钱如何更新网站快照
  • 网页设计软件官网模板网站网站做联盟收入
  • 企业网站建设要点怎么建立一个网站及推广
  • wordpress add_theme_page手机网站怎么做SEO优化
  • 做seo要先做网站么wordpress做网站
  • 有哪些品牌做打底衫的网站学生处网站建设招标公告
  • 营销网站建设创意上海企业vi设计公司
  • 如何建立网站是什么网站备案期限
  • 视频解析网站广州手工活外发加工网
  • 故城网站建设vue做网站看不到htmI吗
  • 网站建设与网页制作案例wordpress 注销按钮
  • 个人网站备案号被注销了云南做网站找谁
  • 东莞网站推广电话哈尔滨红军街67号
  • 朔州做网站的网站建设策划书范文六篇精选
  • 怎样将网站开发说清楚中卫市平面设计培训学校
  • 石家庄网站到首页排名wordpress 视差效果
  • 网站上的图用美图秀秀做可以吗盗版视频网站建设费用
  • 郑州公共住宅建设投资有限公司网站中国著名摄影网站
  • 小学网站建设报告建筑工程网络计划的关键工作有哪些
  • 杭州网站备案要多久湘潭租房网站
  • 宁远做网站msoer做二手衣服的网站