React + TypeScript 实现泛型组件
泛型类型
TypeScript 中,类型(interface, type)是可以声明成泛型的,这很常见。
interface Props<T> {
content: T;
}
这表明 Props 接口定义了这么一种类型:
它是包含一个 content 字段的对象
该 content 字段的类型由使用时的泛型 T 决定
type StringProps = Props<string>;
let props: StringPro ...
React == 实现简易购物车
React == 实现简易版购物车
1、几个要点:
为了方便后面使用input type = "checkbox" 实现复选框的选中/不选中,给传递过来的属性要在遍历的时候,单独加上一个新属性 checked
count 属性 默认值 都是1.
state = {
all : false,
sumprice :0,
one : false,
sumcou ...
react路由
在 web 应用开发中,路由系统是不可或缺的一部分。在浏览器当前的 URL 发生变化时,路由系统会做出一些响应,用来保证用户界面与 URL 的同步。随着单页应用时代的到来,为之服务的前端路由系统也相继出现了。有一些独立的第三方路由系统,比如 director,代码库也比较轻量。当然,主流的前端框架也都有自己的路由,比 ...
react-router-dom中link与Navlink
React Router 是一个基于 React 之上的强大路由库,它可以让你向应用中快速地添加视图和数据流,同时保持页面与 URL 间的同步。
目前react-router最新版本已经到4.0+,因为新的版本是一次非常大的改动,所以这里直接讨论4.0以上版本。
引用
react-router // React Router 核心
react-router-dom ...
React + TypeScript 默认 Props 的处理
React 中的默认 Props
通过组件的 defaultProps 属性可为其 Props 指定默认值。
以下示例来自 React 官方文档 - Default Prop Values:
class Greeting extends React.Component {
render() {
return (
<h1>Hello, {this.props.name}</h1>
);
}
}
// Specifies the default values for p ...
React路由
在 web 应用开发中,路由系统是不可或缺的一部分。在浏览器当前的 URL 发生变化时,路由系统会做出一些响应,用来保证用户界面与 URL 的同步。随着单页应用时代的到来,为之服务的前端路由系统也相继出现了。有一些独立的第三方路由系统,比如 director,代码库也比较轻量。当然,主流的前端框架也都有自己的路由,比 ...
React:react-router-dom 详解
使用react构建单页面应用:
实现方法:(1)react-router
(2)react-router-dom
react-router: 实现了路由的核心功能,而react-router-dom依赖react-router,
react-router-dom: 基于react-router,加入了在浏览器运行环境下的一些功能:
Link组件,会渲染一个a标签;
...
react-router-dom中link与Navlink
Link
现在,我们应用需要在各个页面间切换,如果使用锚点元素实现,在每次点击时,页面被重新加载,React Router提供了<Link>组件用来避免这种状况发生。当 你点击<Link>时,url会更新,组件会被重新渲染,但是页面不会重新加载
嗯、先看个例子
1 <Link to="/about">关于</Link>
2
3 // to为obj
4 <Link to={{
5 ...
在React中使用react-router-dom路由
安装
1 npm install react-router-dom --save-dev //这里可以使用cnpm代替npm命令
基本操作
我们新建两个页面,分别命名为‘home’和‘mine’。这页面中编写如下代码:
import React from 'react';
//home.js
export default class Home extends React.Component {
render() {
return ...
【React】354- 一文吃透 React 事件机制原理
大纲主要分为4大块儿,主要是结合源码对 react事件机制的原理 进行分析,希望可以让你对 react事件机制有更清晰的认识和理解。当然肯定会存在一些表述不清或者理解不够标准的地方,还请各位大神、大佬斧正。0 ...
React与Vue的对比
JavaScript是世界上最流行的语言之一,React和Vue是JS最流行的两个框架。但哪一款更适合你?本文将根据每个框架的重要优缺点,以及设计思路和见解,来对比介绍两个框架。
一.框架背景
React
React得到了Facebook社区的支持,使得构建交互式UI非常容易。React本质是前端组件化框架,不是一个完整的MVC框架, ...
React Native 之react-native-sqlite-storage
npm 官网指导: https://www.npmjs.com/package/react-native-sqlite-storage
1. 执行: npm install react-native-sqlite-storage
2.cd ios 执行pod install
3.执行react native link
使用:
按照上面官网说的,在ios项目根目录下新建www文件夹,里面放sqlite数据库文件
在react native项目中使用:
1. 导入 ...
react-router 5.0 的鉴权
react-router 5.0 的鉴权
当我们使用react-router 控制页面的路由时候,有些页面,是需要登录才能访问,有些不需要登录就可以访问,还有些页面,是根据用户的权限来限制访问的。
如果是传统的多页面,只需要后端鉴权就可以了,没权限就直接后端重定向。
但是单页面情况下,路由使用了 window.history.statepush 这种情况下 ...
React Hooks 你不来了解下?
前言
最近在看 React 的新语法—— React Hooks,只能一句话概括:React 语法真的是越来越强大,越写代码越少。
强烈推荐还没看 React Hooks 的同学去学习下,这会让你写react 项目变得非常爽!
以前 React 组件可以看成是: 无状态组件(function定义)和有状态组件(class 定义),React Hooks 出现之后,我们基本所有的 ...
React Hooks 实现react-redux
Redux 是目前 React 系统中最常用的数据管理工具,它落实并发扬了 Flux 的数据单向流动模式,被实践证明为一种成熟可用的模式。
尽管承受着一些非议,Redux 在 React 数据管理界的地位仍然没有被取代。我听到的针对 Redux 最多的非议是它需要遵守的规则和步骤太多,让人们觉得束手束脚。然而个人觉得这正是 Redux 的意思所 ...
React 性能优化之组件动态加载(react-loadable)
React 项目打包时,如果不进行异步组件的处理,那么所有页面所需要的 js 都在同一文件中(bundle.js),整个js文件很大,从而导致首屏加载时间过长。
所有,可以对组件进行异步加载处理,通常可以使用 React-loadable。
React-loadable 使用
例如,对于项目中的detail组件(/src/pages/detail/),在 detail 目录下新建 lo ...
React-router5.x 路由的使用及配置
在 React router 中通常使用的组件有三种:
路由组件(作为根组件): BrowserRouter(history模式) 和 HashRouter(hash模式)
路径匹配组件: Route 和 Switch
导航组件: Link 和 NavLink
关于路由组件,如果我们的应用有服务器响应web的请求,建议使用<BrowserRouter>组件; 如果使用静态文件服务器,建议使用<HashRoute ...
【react】---react中使用装饰器
一、creact-react-app中使用装饰器
运行 npm run eject 可以让由create-react-app创建的项目的配置项暴露出来
此时,项目中多了一个config文件,并且各个配置文件已经暴露出来了。(运行npm run eject之前,保证本地没有待提交到git的文件)
安装babel插件npm install --save-dev @babel/plugin-proposal-decorators re ...
新手学习 React 迷惑的点
网上各种言论说 React 上手比 Vue 难,可能难就难不能深刻理解 JSX,或者对 ES6 的一些特性理解得不够深刻,导致觉得有些点难以理解,然后说 React 比较难上手,还反人类啥的,所以我打算写两篇文章来讲新手学习 React 的时候容易迷惑的点写出来,如果你还以其他的对于学习 React 很迷惑的点,可以在留言区里给我留言。
为 ...
Mobx-React : 当前最适合React的状态管理工具
MobX
简单、可扩展的状态管理
MobX 是由 Mendix、Coinbase、Facebook 开源和众多个人赞助商所赞助的。
安装
安装: npm install mobx --save。 React 绑定库: npm install mobx-react --save。 要启用 ESNext 的装饰器 (可选), 参见下面。
CDN:
https://unpk ...