location 有可能是一个‘’,''.split() 将输出[""],是个含有空字符串的数组,而[]是个什么都没有的数组,两者不同. code: change initialValue from : initialValue:   location.split(',') || [] to: initialValue: location === '' ? [] : location.split(',')  …
最近在公司做React+antd的项目,遇到一个上传组件的问题,即上传附件成功后,文件展示处仍然还有之前上传附件的缓存信息,需要解决的问题是,要把上一次上传的附件缓存在上传成功或者取消后,可以进行清除 经过一顿试错,终于解决了这个问题. showUploadList,是可选参数,即是否展示uploadList,默认是开启的,showUploadList:true即为展示,效果是当附件上传成功后,会在页面上显示出上传的附件名字记录,如上图所示. 需要解决的问题是:在有上传按钮的弹出框里,当上传附件…
typescript+react+antd基础环境搭建(包含样式定制) tsconfig.json 配置 // 具体配置可以看上面的链接 这里module moduleResolution的配置都会影响到antd的显示 // allowSyntheticDefaultImports 是antd官网给的配置 必须加上 { "compilerOptions": { "outDir": "./dist/", "sourceMap":…
form表单在我们日常的开发过程中被使用到的概率还是很大的,比如包含了登录.注册.修改个人信息.新增修改业务数据等的公司内部管理系统.而在使用时这些表单的样式如高度.上下边距.边框.圆角.阴影.高亮等等都大同小异.大差不差且表单的功能基本相似,所以很有必要对这些表单来一个简单的封装. 其实,封装组件的意义我们在上一篇封装react antd的表格table组件中已经介绍过了,这里不再做过多的描述了,且在"封装react antd的表格table组件"一文中,我们也对相关技术作了简要介绍…
React框架已经火了好长一段时间了,再不学就out了! 对React还没有了解的同学可以看看我之前的一篇文章,可以快速简单的认识一下React.React入门最好的实例-TodoList 自己从开始接触react一窍不通,到慢慢的似懂非懂,通过各种途径学习也有一阵了.学习过程中还会接触到很多新的东西,比如ES6.webpack,过程艰辛谁人懂,见坑填坑慢慢来.今天把学习过程过滤了一下,只说项目实际需要用的东西,总结了一套能看到的东西,分享给大家,希望能让读者少踩一些坑! 本文看点 实际项目效果…
If you are getting this error then you probably reset the permissions on your hidden .ssh directory in your user folder, and your keys aren’t going to work anymore. It’s very important that these files not be writable by just anybody with a login to…
工欲善其事必先利其器,学习React也是如此. 下面分享一篇基于webpack+react+antd 项目构建的好文章, https://blog.hduzplus.xyz/articles/2017/03/20/1490020310263.html http://www.jqhtml.com/7626.html…
第一次尝试React+antd,发现果然不愧是传说中的坑货,一个又一个坑.必须要记录. react + antd,都是最新版本,使用npm和yarn各种add,build,start 1. 资源文件,图片文件,路径在build之后会不能用 我们希望的是http://xxxxxxx/AAA/img/XX.png 但build之后给出的是http://xxxxxxx/static/media/XX.png 解决方案: node_modules -> react-scripts -> config…
webpack+babel+react+antd技术栈的基础配置 前段时间使用webpack+babel+react+antd做了一套后台管理系统,刚开始被一大堆的新知识压的喘不过气来,压力挺大的.还在一步步走来,学习了很多.那时候还不会配置,直接从网上下了别人配置好的可以跑的.之后特意花了一段时间好好研究了下webpack,后面可以直接动手做一些基本的配置.webpack很强大,还有许多要学习的地方. 最近学习了挺多知识,堆积着没有记录到博客.找机会慢慢写出,因工作需要,最近干了后端,毕竟是前…
上传文件也是我们在实际开发中常遇到的功能,比如上传产品图片以供更好地宣传我们的产品,上传excel文档以便于更好地展示更多的产品信息,上传zip文件以便于更好地收集一些资料信息等等.至于为何要把上传组件封装成一个公共的.可复用的组件,在前两篇文章封装react antd的form表单组件.封装react antd的表格table组件中已经作了很多介绍,这里同样不再赘述. 有朋友觉得这些功能组件在各种前端框架满天飞的今天都大同小异.大差不差,甚至觉得Level有点Low.哈哈,其实事实也确实是这样…
前一段时间分享了基于vue和element所封装的弹窗组件(封装Vue Element的dialog弹窗组件),今天就来分享一个基于react和antD所封装的弹窗组件,反正所使用的技术还是那个技术,情况还是那个情况.只是基于vue所封装的弹窗组件和基于react所封装的弹窗组件还是有很大差别的.一样的是封装的思想和思路,不一样的是实现的技术. 至于所用到的技术,还是跟之前分享的有关react组件所用到的技术差不多,无非就是react hooks.函数式组件等.实现思路的话,还是在父组件中打开弹…
版本:[ "JYadmin-react-antd": "^1.0.0"] 版权所有:微信公众号[微新悦] 原文链接:https://www.weixinyue.cn/frontCourses/#/JYAdminReactAntd1.0/1(阅读效果更佳)  文章说明:本课题会带大家从零到一打造一套基于react+antd封装的优秀后台模板集成方案   第一节:[react+antd 基础框架搭建(登录)]   第一步:使用create-react-app脚手架创建一…
背景 ​ 最近因为要做一个新的管理后台项目,新公司大部分是用vue写的,技术栈这块也是想切到react上面来,所以,这次从0到1重新搭建一个react项目架子,需要考虑的东西的很多,包括目录结构.代码规范.请求封装等等, 涉及内容较多,所以我分成了几个部分来记录搭建的过程: 从0到1用react+antd+redux搭建一个开箱即用的企业级管理后台系列(基础篇) 从0到1用react+antd+redux搭建一个开箱即用的企业级管理后台系列(引入redux) 从0到1用react+antd+re…
一.React规范 1.1 react key的作用 当渲染重复数据的时候,React.diff会根据生成的key进行虚拟DOM渲染, 所以我们需要在遍历的地方都要加上key,例如map.for等等 同样, antd作为react的UI组件库, 有些地方也需要遵循react的key规范.例如 antd-table 在渲染前要求: 在 Table 中,dataSource 和 columns 里的数据值都需要指定 key 值.对于 dataSource 默认将每列数据的 key 属性作为唯一的标识…
效果: 代码: import React from 'react'; import { Table } from 'antd'; import DatePicker1 from './DatePicker'; const pieArrs = [ {place_id: 3}, {place_id: 3}, {place_id: 3}, {place_id: 3}, {place_id: 3}, {place_id: 3}, {place_id: 3}, {place_id: 3}, {place_…
index.js: import React from 'react'; import ReactDOM from 'react-dom'; import CardSecond from './CardSecond'; import './index.css'; ReactDOM.render( <div> <CardSecond /> </div>, document.getElementById('root') );     CardSecond.js:   imp…
import React from 'react'; import {Link, withRouter} from 'react-router-dom'; import {Layout, Menu, Icon} from 'antd'; const {SubMenu} = Menu; const {Sider} = Layout; class SideBar extends React.Component { constructor(props) { super(props); this.sta…
import React from 'react'; import {Form, InputNumber, Input, DatePicker, Button, Select, Icon} from 'antd'; import moment from 'moment'; // 推荐在入口文件全局设置 locale import 'moment/locale/zh-cn'; moment.locale('zh-cn'); import PageTitle from "component/page…
import React, { Component } from 'react'; import ReactDOM from 'react-dom'; import { Form, InputNumber, Input, DatePicker, Button, Select } from 'antd'; import moment from 'moment'; // 推荐在入口文件全局设置 locale import 'moment/locale/zh-cn'; moment.locale('z…
封装组件是为了能在开发过程中高度复用功能和样式相似的组件,以便我们只关注于业务逻辑层的处理,提高开发效率,提高逼格,降低代码重复率,降低劳动时间,减少加班的可能. 本次组件的封装采用了函数式组件即无状态组件的方式来提高页面渲染性能,由于无状态组件在数据变更后不会主动触发页面的重新渲染,所以本次的封装也用到了React Hooks.下面简要介绍一下函数式组件和React Hooks. 函数式组件是被精简成一个render方法的函数来实现的,由于是无状态组件,所以无状态组件就不会再有组件实例化的过程…
前提条件:node和ruby on rails必须已经安装好(相关安装流程不再此处介绍) 1.nvm.node 2.npm or yarn装一个就好 3.rvm.ruby on rails 4.foreman 一.新建一个rails项目后加入react gem包 1.Gemfile文件添加gem 'react_on_rails', '~>6' # use latest gem version > 62.bundle install安装gem包3.rails generate react_on_…
这两天在研究flask和antd,想把这俩个东西结合来使用,单独学antd的时候用的是dva来配置,但是发现这样与flask结合的话需要启动两个服务,作为flask只是作为数据的接口,并没用用到其强大的模板渲染功能,所以最后还是想能本地化antd,把它当做只是一个ui组件库来用的话可能就能实现了.下面是具体的流程. 在上一篇中写到了将antd本地化,在此基础上我们就可以用antd表单组件渲染一个登录页面,再将其放在flask的templates中.模板login.html: <!DOCTYPE…
今天折腾了半天,各种安装问题,最终还是装上了: 1.安装npm $ sudo apt install npm 2.升级npm $ sudo npm install npm@latest -g 输入npm -v,即可看到当前npm的版本号,说明安装成功了. 3.安装用于安装nodejs的模块n $ sudo npm install -g n 4.n模块安装指定版本的nodejs //安装官方最新版本 $ sudo n latest //安装官方稳定版本 $ sudo n stable //安装官方…
antd框架地址:https://ant.design/index-cn 利用antdUI框架做了个分页,其他功能都没问题,但是页面跳转后刷新会回到第一页,经过学习,在组件里增加了hash值,详情请看代码,实现了页面跳转后刷新依然显示刷新前的页面. import React from 'react' import { Pagination, Spin } from 'antd' //引入分页组件 import 'whatwg-fetch' import './agricultural.less'…
见章知著 1024,程序员们节日快乐!本文主要讲述react配合antd以及react-img-crop第三方库实现一个可控的图片上传功能. 运行项目 需要具有node环境 第三方库安装 1.antd(Upload)安装和初始化 1.1.在代码编辑器(VS-Code或者其他编辑器)代开终端,输入命令行安装antd: $ yarn add antd --save 或者 $ npm install antd --save 1.2.安装好antd后,修改src/App.css,在新建的项目中引入ant…
示例数据 原始数组 const data = [ { key: '0', name: 'John Brown', age:22, address: 'New York No. 1 Lake Park', tags: ['nice', 'developer'], }, { key: '1', name: 'John Brown', age: 42, address: 'London No. 1 Lake Park', tags: ['loser'], }, { key: '2', name: 'J…
1.node版本 首先你要先看下你的node版本,如果小于10,建议升级到10及以上,因为低版本的 node 在自动创建 react框架时,有配置文件跟10及以上的有比较大的差异,而且需要增加.修改的配置有点多,有些繁复,所以为了能够轻松自在的创建基础框架,最好是升级下node.我用的nvm,版本随意切换,所以还算自在. 2.先跑命令 : npm install -g create-react-app 创建下 构建环境. 3.create-react-app  <你定义的项目名> ,运行后就会…
最近项目中在使用antd的分页组件时发生了第一次点击分页无变化,再次点击时数据为上一次的分页结果,代码如下: setPageIndex = (pagination)=> { const pager = { ...this.state.pagination }; pager.current = pagination.current; this.setState({ pagination: pager, // 设置当前页 }); this.getList(); // 获取数据列表 } 在确认代码无误…
一.Antd(Ant Design)的使用:引入全部Css样式 1.1 antd官网: https://ant.design/docs/react/introduce-cn 1.2 React中使用Antd 1.在项目根目录安装antd[每个项目都安装一次]: npm install antd --save / yarn add antd / cnpm install antd --save 2.在您的react项目的css文件中引入Antd的css[会引入所有css样式]: @import '…
最近做了一个需求,后台管理系统添加一个可以动态修改ant-design主题色.查询了大多数的文章,发现基本都是抄来抄去,而且文章记录的也一点也不详细.刚刚把这个功能做完了,顺便记录一下如何去修改主题色.主要使用到的包是antd-theme-generator.使用起来非常方便,而且在热更新时,不会出现 js 内存爆栈现象. 主题思想:主要使用 antd 的 less 变量,修改全局的 less 变量,完成样式的更新.以下是 less 等版本信息. 案例网址: https://azhengpers…