有篇UMI入门简易教程可以看看:https://www.yuque.com/umijs/umi/hello 程序在点击操作时报了一个Warning: [sagaEffects.put] User/updateUserState should not be prefixed with namespace User,但不影响正常使用. 解决方法 1.最开始以为是页面下的dispatch不需要加User/但去掉后没反应了 2.尝试在页面下增加如下代码屏蔽警告,可以,但是感觉不是最终解决方法 conso…
目录: AntDesign(React)学习-15 组件定义.connect.interface AntDesign(React)学习-14 使用UMI提供的antd模板 AntDesign(React)学习-13 Warning XX should not be prefixed with namespace XXX AntDesign(React)学习-12 使用Table AntDesign(React)学习-11 使用mobx AntDesign(React)学习-10 Dva 与后台数…
前言:学习目标实现点击登录按钮,直接进入后台布局页面,类似下面antd官网文档展示效果 ant.design访问 https://ant-design.gitee.io/components/menu-cn/ 速度比较快 1.最开始想的很简单,增加一个页面,修改一个路由即可,实际操作中掉了几次坑,花了很长时间 首先修改路由如下,注意:如果写后面,比如 的话会报 要放前面如下 或者增加exact 注意,嵌套路由父路由不能使用exact:true 这种无法访问 2.修改BasicLayout内容如下…
1.前面创建了第一个项目jgdemo,结构如下,使用TypeScript. 2.yarn start启动项目 3.点击GettingStarted是umi的官方网站 https://umijs.org/guide/getting-started.html 4.我们没必要从头建立项目,直接使用antdesign项目即可,当然罗马不是一天建成的,我们可以使用上面项目进行简单的语法测试学习React用. 5.启动antdesign项目 6.将用这个项目来做SpringBoot学习的前端展示页面,该de…
1.UMI提供了可视化antd模板,可以直接添加到项目中修改用 比如将个人中心添加到项目中 2.选择个人中心,确定 3.成功 4.打开项目 5.Route文件也自动添加 根路由有exact:true后面要把工作台移到mainfrm路由中 6.运行报错 7.安装 8.找不到style.less 安装less模块npm install --save-dev less-loader less type.d.ts增加 declare module '*.css'; declare module "*.p…
AntDesign(Vue)版的Table中使用图片https://www.cnblogs.com/zhaogaojian/p/11119762.html 之前在使用VUE版Table时,使用大图片时,某些列使用右fix会出现错乱问题(可能我使用的方法有误),试用React版看会有问题不 public 增加 images目录,放置两个图片1.jpg,2.jpg pages下增加user\components目录,创建一个UserList.jsx 代码如下 import { Menu, Icon…
今天肺炎增长数字依然吓人,感觉穿越到丧失片里了. 本节开始学习dva model使用,官网的讲解太文档化,对新手实践不太友好,自己简化了一个最简单的演示代码. 1.在src,models文件夹下创建user.ts,初始化username为张三1 const UserModel = { namespace: 'User', state:{ UserInfo:{ username:"张三1" } }, reducers:{ updateUserState(state,action) { l…
本节实现一个点击左侧menu在右侧content切换页面效果,原始代码请从UMI学习-6开始看 1.在pages下添加两个组件,User,UserRole import React from 'react'; class User extends React.Component { render() { return ( <div>用户管理</div> ); } } export default User; import React from 'react'; class User…
github代码:https://github.com/zhaogaojian/jgdemo 全国肺炎,过节期间没地方去在家学习antd. 一.感觉antd pro项目太庞大了,可以学习下结构和代码风格,但不适合新手直接学习测试语法用,将从一个空白项目开始创建 1.打开umi管理后台,创建一个新项目 2.umi会自动安装各种依赖项,进行项目创建 3.项目结构如下,将仿照antd做一个登录页面 二.实现登录页面 创建了不包含antd演示的jgdemo项目,以后改使用vscode编辑代码,创建use…
前面项目已经建起来了,但是没有React基础怎么办,从头学习,这个项目使用的是基于React16.X版本的几种技术集成,那么我们就从网上找一些相关的资料进行研究,我的习惯是用到哪学到哪. 一.先看一些基础示例1.render用法 ReactDOM.render( <h1>Hello, world!</h1>, document.getElementById('example') ); 以上代码将一个 h1 标题,插入 id="example" 节点中. 2.创建…
虽然常用的编码用一种即可,但是看别人文档或者示例时,有的写法不熟悉的话看着很不习惯,整理几种实现同一功能的不同写法 1.Dva Connect与@Connect import React, { Props } from 'react'; import { Button, Input } from 'antd'; import { connect } from 'dva'; //@connect(()=>({"age":111})) class Demo extends React…
mobx 是由 Mendix.Coinbase.Facebook 开源和众多个人赞助商所赞助的. mobx和redux类似,也可以用来进行状态管理,并且更简单,更灵活.初次研究,先实现一个最简单的功能修改一个字符串值 官网:https://cn.mobx.js.org 1.安装 yarn add mobx-react --saveyarn add mobx --save ... 2.添加import import { observer } from 'mobx-react'; import {…
明天正式在线办公没时间学习了,今天晚上再更新一篇, 代码提交一次:https://github.com/zhaogaojian/jgdemo 1.src下创建services目录 创建文件userSrv.ts export async function query(): Promise<any> { return request('user/getuserinfo'); } import axios from "axios" export default async fun…
1.官方文档请查看https://ant.design/components/menu-cn/antPro自带的菜单功能很强大,但是太复杂了,感觉大部分功能都用不上,下面实现一个简单从后台动态获取菜单的功能. 2.增加SubMenu方法 2.1 定义 const { SubMenu } = Menu; 2.2 增加SubMenu节点 <SubMenu key="sub3" title="Submenu">  <Menu.Item key="…
今天花了大半天时间从老家回到工作地,路上因为肺炎封堵挺厉害,希望国家挺过这个难关,要不大家都失业可就惨了,上一篇做了一个展示数据的demo,这一篇研究antd Menu item点击事件 1.还是先看文档 在menu上增加onClick事件 2.handleClick代码如下 handleClick = e => { console.log('click ', e); }; 3.可以在console里看到点击事件详情 4.为了将url传递过来,在Menu.Item上增加自定义属性 5.在hand…
非dom属性?dangerouslySetInnerHTML,ref,key非dom标准属性,也就是说dom标准里面没有规定的属性,react引入了三个非dom属性,如上.dangerouslySetInnerHTML:字面意思,危险的设置内部html,这个属性的作用就是在jsx中,直接插入html代码.我们为什么用这个属性插入html代码呢?而不是在编写代码的时候直接写入呢?因为有的时候我们在编写代码的时候,无法确实要插入什么代码,也就是说这部分html代码是动态生成的.或者说不是由我们来编写…
什么是react?react的官方网站:https://facebook.github.io/react/下图这个就是就是react的标志,非常巧合的是他和我们的github的编辑器Atom非常相似.react是Facebook官方推出的一个javascript的库,现在已经有了非常多的库和框架Facebook为什么还要开发一款新的框架呢?原因就是 Facebook遇到了一些新的问题.Facebook需要解决的问题是构建数据不断变化的大型应用.大型应用是什么意思?数据不断变化带来什么问题呢? …
React学习系列 系列学习react 翻译地址 https://scotch.io/tutorials/learning-react-getting-started-and-concepts 我是初学者,英语也不是很好,不过一直强迫自己看英文文档. 这是理解翻译,翻译的不好,请见谅!()中的是我翻译过程中理解,参考下,有什么说的不对的欢迎指点下! 第一节:如何开始react和了解react的概念 1.React是什么 react是Facebook 开发出来用于促进UI交互,创建带有状态的,可复…
相关技术:webpack+react+react-router+redux+immutable 郭永峰react学习指南 1.git bash--windows命令行工具 --教程 下载地址 2. immutable immutable的基础操作    中文基础操作文章 2.1 es6运行编译环境搭建 3. js创建对象的几种方法 4.阮一峰全栈开发教程 5.react--api 6.redux-ruanyifeng  redux文档 疑问点: 关于react-router中props传递的问题…
摘要 react 学习包括几个部分: 文本渲染 JSX 语法 组件化思想 数据流 一 组件通信如何实现 父子组件之间不存在继承关系 1.1 父=>子通信 父组件可以通过 this.refs.xx 调用子组件的方法,比如 setState 等 1.2 子=>父通信 有两种方法,两个粒度: 1)利用call/apply 把父组件替换子组件方法的this对象,实现子组件调用父组件属性和方法 2)通过props 形式,把父组件方法传递给 子组件,子组件调用props 的方法,实际是 父组件在执行 1.…
React入门指南 作者:狐狸家的鱼 本文链接:React学习笔记 GitHub:sueRimn 1.组件内部状态state的修改 修改组件的每个状态,组件的render()方法都会再次运行.这样就可以修改组件内部状态,确保组件重新改渲染并且展示从内部状态获取到的正确数据 初始状态应该通过this绑定到类上 class App extends Component { //构造函数在一个组件周期只执行一次 constructor(props) { super(props); //state通过th…
转自:https://www.infoq.cn/article/AEkiVAiJf25LZmoUe_yc 之前我们已经介绍了2019 年 Vue 学习路线图,而 React 作为当前应用最广泛的前端框架,在 Facebook 的支持下,近年来实现了飞越式的发展,所以,我们将在下文中介绍 2019 年 React 学习路线图,希望给想学 React 的开发者一些借鉴. 这就是 2018 年的 React 路线图.它非常全面,2018 年剩下的时间可能不够你学会所有这些,但不要担心,所有的技术在 2…
React学习笔记(七) 六.条件渲染 使用if或条件运算符来创建表示当前状态的元素. 可以使用变量来存储元素.比如: let button = null; if (isLoggedIn) { button = <LogoutButton onClick={this.handleLogoutClick} />; } else { button = <LoginButton onClick={this.handleLoginClick} />; } 与(&&)运算符…
2.2页面加载过程 1.资源加载过程:URL->DNS查询->资源请求->浏览器解析 ①URL结构:http://www.hhh.com:80/getdata?pid=1#title[协议://域名:端口/路径?参数#哈希] ②DNS查询:浏览器<--(ip)(域名)-->DNS缓存+DNS服务器   (dns-prefetch缓存) ③资源请求:浏览器<--(status+response-header+body)(request-header+参数(url.body…
AntDesign Form使用布局相比传统Jquery有点繁琐 (一)先读写一个简单的input为例 <a-form :form="form" layout="vertical" hideRequiredMark> <a-row> <a-col :span="8"> <a-form-item label="用户名"> <a-input v-decorator="…
原文:https://www.html.cn/archives/10111 注:本文根据 React 开发者学习线路图(2018) 结构编写了很多新手如何学习 React 的建议.2019 年有标题党的嫌疑,但是 2018 年剩下的时间不多,我相信文中提到的这些技术 2019 年也不会过时.所以本文完全可以作为 2019 年 React 学习指南.文章中包含相关资源链接希望对你有所帮助.同时本文也大量引用了 The 2018 React JS RoadMap 文章内容和结构,不过该文章中推荐的大…
作者|javinpaul 译者|无明 之前我们已经介绍了 2019 年 Vue 学习路线图,而 React 作为当前应用最广泛的前端框架,在 Facebook 的支持下,近年来实现了飞越式的发展,我们将在下文中介绍 2019 年 React 学习路线图,希望给想学 React 的开发者一些借鉴. 下图是2018 年的 React 路线图,它非常全面,2018 年剩下的时间可能不够你学会所有这些,但不要担心,所有的技术在 2019 年仍然有效.   图片来源: https://github.com…
属性的含义和用法props=properties 英文中属性的意思.属性不可以修改,也就是属性不可以由组件进行修改,组件的属性是由父组件传递过来的,相当于组件在出生的时候带的.用法第一种:直接在调用组件的时候传入一个键值对,  这个键值对可以是字符串: <HelloWorld name="李明"></HelloWorld> 可以是大括号:大括号本质上是一个js的求值表达式,里面可以写很多内容,最简单的就是写数据,直接拿到的数字 <HelloWorld na…
销毁阶段可以使用的函数:componentWillUnmount:在删除组件之前进行清理操作,比如计时器和事件监听器.因为这些函数都是开发者手动加上去的,react不知道,必须进行手动清理. 实例第一种方式:在render中,把之前已有的页面去掉,反映到页面中,就是把它删掉. <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title…
运行中可以使用的函数componentWillReceiveProps:父组件修改属性触发,可以修改新属性,修改状态.字面意思,组件将要接收属性,这个函数触发的时机就是组件的属性将要发生改变的时候,但是需要注意的是,他是在组件将要改变之前触发,比如说父组件修改了子组件的属性,那么在修改真正发生之前,会触发这个函数,也就说,给开发者一个机会去处理这个属性,开发者可以对比新属性和旧属性,并修改属性和状态,这样,我们就可以在属性真正的被传送到组件之前,对他进行处理,有可能对应的更改一些状态,有可能是修…