<i className={classNames({ 'device-icon': true, 'camera-icon': true, 'camera-icon-hover-show-intro': this.state.shouldVolumeGainBarShow === false, active: this.state.isCameraOpened === true, })} role="button" tabIndex={0} onClick={this.handle…
如果给按钮设置了背景图片,当鼠标移到按钮上的时候,按钮就好变成一个浅蓝色的按钮,背景图片就消失了,对于这个问题有很多解决方法,我只分享一下我的解决方法. 我第一次用的方式是在按钮中添加一个图片,不用背景来设置. <Button HorizontalAlignment="Left" Margin="179,56.506,0,0" Click="Button_Click" VerticalAlignment="Top" Wi…
项目中遇到了要让按钮上的文字换行显示的需求,就写了这个博客. 1.如果按钮上的文字固定,形式是写死的,可以考虑给标题文字加\n换行符来达到效果,但是,记得一定要设置这个属性,不然是不会换行的, button.titleLabel.lineBreakMode = NSLineBreakByWordWrapping; NSString * titleStr = @"换行\n显示"; UIButton * button = [UIButton new]; button.backgroundC…
最近在react项目中需要实现一个,右键自定义菜单功能.找了找发现纯react项目里没有什么工具可以实现这样的功能,所以在网上搜了搜相关资料.下面我会附上完整的组件代码. (注:以下代码非本人原创,具体详情请参考 https://blog.csdn.net/anyicheng2015/article/details/78581064) import React, { Component } from 'react' import PropTypes from 'prop-types' impor…
本文作者:胡子大哈 原文链接:https://scriptoj.com/topic/178/如何在非-react-项目中使用-redux 转载请注明出处,保留原文链接和作者信息. 目录 1.前言 2.单纯使用 Redux 的问题 2.1.问题 1:代码冗余 2.2.问题2:不必要的渲染 3.React-redux 都干了什么 4.构建自己项目中的 "Provider" 和 "connect" 4.1.包装渲染函数 4.2.避免没有必要的渲染 5.总结 6.练习 1.…
前言 或许你当前的项目还没有到应用Redux的程度,但提前了解一下也没有坏处,本文不会安利大家使用Redux 概念 首先我们会用到哪些框架和工具呢? React UI框架 Redux 状态管理工具,与React没有任何关系,其他UI框架也可以使用Redux react-redux React插件,作用:方便在React项目中使用Redux react-thunk 中间件,作用:支持异步action 目录结构 Tips:与Redux无关的目录已省略 |--src |-- store Redux目录…
在react项目中实现此功能可借助 react-rnd 库,文档地址:https://github.com/bokuweb/react-rnd#Screenshot .下面是实例运用: import React, { Component } from 'react' import PropTypes from 'prop-types' import assign from 'object-assign' import classNames from 'classnames' import _ f…
并上一节使用的是普通的数据状态管理,不过官方推荐使用装饰器模式,而在默认的react项目中是不支持装饰器的,需要手动启用. 官方参考 一.添加配置 官方提供了四种方法, 方法一.使用TypeScript,顾名思义该方法是项目使用typescript时的配置 方法二.使用babel-preset-mobx, 安装并添加到.babelrc配置中,该方法需要升级一些依赖, babel-core -> @/babel-core 7.x babel-loader -> @/babel-loader 8.…
这里我们要在自己搭建的react项目中使用ECharts,我们可以在ECharts官网上看到有一种方式是在 webpack 中使用 ECharts,我们需要的就是这种方法. 我们在使用ECharts之前要先安装ECharts,在以往的开发模式中,我们很多使用就是把官网中的ECharts的核心js文件导入到我们的html或者是jsp等文件里面,但是在react项目中,我们可以直接使用node.js的npm命令安装: npm install echarts --save 这个时候我们的ECharts…
概念 首先我们会用到哪些框架和工具呢? React UI框架 Redux 状态管理工具,与React没有任何关系,其他UI框架也可以使用Redux react-redux React插件,作用:方便在React项目中使用Redux react-thunk 中间件,作用:支持异步action 目录结构 Tips:与Redux无关的目录已省略 |--src |-- store Redux目录 |-- actions.js |-- index.js |-- reducers.js |-- state.…
前言 在第二小节中,我们讨论了利用TypeScript创建Web项目的实现,在本下节,我们讨论一下如何结合React创建一个具备TypeScript类型的应用项目. 准备 Webpack配置在第二小节项目的基础上做了一些修改, 添加React相关依赖:react.react-dom.@types/react 和@types/react-dom 修改Webpack配置文件 修改webpack.base.config.js,其余文件和第二小节保持一致,修改如下: const HtmlWebpackP…
今天想跟大家分享一下redux在react项目中的简单使用 1 1.redux使用相关的安装 yarn add redux yarn add react-redux(连接react和redux) 2. redux在项目中的基础使用 1.在index.js入口文件注入store import { Provider } from "react-redux" import store from "./redux/store" ReactDOM.render( <Pr…
如果你的项目中并没有用到redux,那本文你可以忽略 问题引入 纯粹的单页面react应用中,通过this.props.history.push('/list')就可以进行路由跳转,但是加上了redux后,使用这个语句并不能生效.相信你在做的过程也遇到了此问题,控制台报错了-_- 1 Uncaught TypeError: Cannot read property 'push' of undefined 解决方案 在将要使用js控制路由的组件中引入withRouter方法; 大专栏  react…
react项目中ant-design按需加载,使用react-app-rewired的时候报错 运行npm start或者yarn start报如下错误: TypeError: injectBabelPlugin is not a function 原因好像说是react-scripts 升级到 2.1.2 以后破坏了 react-app-rewired 解决方法,对react-scripts进行降级处理 npm install react-app-rewired@2.0.2-next.0 成功…
一.react项目中使用less 1. 安装配置 npm i -D less less-loader 2. 查看webpack配置 npm run eject 此操作不可逆,生成新的目录. 3. 修改其中的webpack.config.js文件 二.react 16.12.0 中修改antd的主题样式 npm i -D babel-plugin-import 2. 在package.json中找到对babel的配置,并进行如下修改 "babel": { "presets&qu…
react-amap 这是一个基于 React 封装的高德地图组件,帮助你轻松的接入地图到 React 项目中. 文档实例预览: Github Web | Gitee Web 特性 ️ 自动加载高德地图 SDK(通过创建 Script 标签的形式加载),包括第三方 SDK. 使用 Typescript 编写,集成高德地图 SDK @type 声明文件(包括中文注释). ⚛️ 支持 React Hook 新增特性(需要 React 16.8+). 不依赖任何第三方组件. 安装 不依赖 uiw 组件…
最近有个需求,在一个react项目中,实现搜索关键字呈现高亮状态.这个在普通的html文件中还好操作些,在react项目中有点懵逼了,因为react项目中很少操作dom,有点无从下手.但最后还是实现了效果,如下: 首先来看看如何在react中操作dom,广大网友给出两种方案: 一:使用选择器: 1.引入react-dom     import ReactDom from 'react-dom' 2.给react节点设置id或类名等标识     <span id='tip'></span&…
目录 认识JSS 什么是JSS JSS 的常见实现 JSS 的好处与坏处 好处 坏处 使用模块化CSS实现JSS 安装插件 在React项目中的tsconfig.json中添加配置 vscode项目中添加配置 认识JSS 什么是JSS 简单来说,一句话概括CSS in JS (JSS),就是"行内样式"(inline style)和"行内脚本"(inline script). 因为,自从React出现以后,基于组件化的要求,强制把HTML.CSS.JavaScrip…
使用create-react-app脚手架搭建初始化项目 > npm install -g create-react-app > npx create-react-app my-app create-react-app构建的项目默认使用css语法,但是隐藏的webpack配置中配置支持了css/sass/scss 要想使用less/scss及全局样式/变量首先需要执行npm run eject命令暴露webpack等配置文件等信息 该操作不可逆,会在项目根目录中生成config(配置文件)和s…
大家都知道BizCharts是基于react封装的一套图表工具,而HighCharts是基于jQuery的.但是由于本人对BizCharts甚是不熟,所以在react项目开发中选择了HighCharts,在使用及对接数据的时候也是遇到了各种问题. 下面简单说下项目需求:首先是两个网络数据源,要求随时间的变化网络折线图不断更新,且当展示一定的数据点后开始折线图从右往左平移. 下面附上该组件所有代码. import React, { Component } from 'react' import P…
antd是蚂蚁金服推出的ui组件库,给我们在react项目开发中提供了大大的便利.但在使用的过程中,或多或少的会遇到一些问题,毕竟,用的是别人的东西,就得遵守别人的规则嘛!官方文档:https://ant.design/docs/react/introduce-cn 1. 国际化(中文化) 通过官方文档我们可以知道,很多组件如DatePicker.Modal等等默认的文本都是英文.如果是输入框的提示文字我们可以通过组件的placeholder属性来自定义:如果是模态框底部按钮的文字我们也可以通过…
数据可视化在前端开发中经常会遇到,万恶的图表,有时候总是就差一点,可是怎么也搞不定. 别慌,咱们一起来研究. 引入我就不多说了 npm install echarts 对于基础的可视化组件,我一般采用组件封装的方式来使用echarts 当需要在项目中使用echarts做图表时,可以直接将其封装成一个组件 1 import React, { Component } from 'react'; 2 3 // 引入 ECharts 主模块 4 import echarts from 'echarts/…
序言 本文会侧重于TypeScript(以下简称TS)在项目中与React的结合使用情况,而非TS的基本概念.关于TS的类型查看可以使用在线TS工具TypeScript游乐场 React元素相关 React元素相关的类型主要包括ReactNode.ReactElement.JSX.Element. ReactNode.表示任意类型的React节点,这是个联合类型,包含情况众多: ReactElement/JSX.从使用表现上来看,可以认为这两者是一致的,属于ReactNode的子集,表示"原生的…
需求 展示海南省地图,点击市高亮展示,并在右侧展示对应市的相关数据. 准备工作 Echarts 海南地图json 效果图 代码 index.tsx import React, { useRef, useEffect, useState } from "react"; import Sss from "../../images/index/sss.png"; import SssActive from "../../images/index/sss-on.p…
前言 自从入坑WebAssembly以来,躺了很多坑,也浏览了很多资料,都没有看到很多能够直接在前端项目中使用WebAssembly的例子.即使有,我自己按照介绍的步骤一步一步来, 也会报各种错误,官方的文档也写的比较模糊.于是,就决定自己撸一个,让React项目能够直接的借助Webpack,在代码中引入已经编译好的C++模块. 写一个C语言模块 int add(int a, int b) { return a + b; } 使用emscripten对C模块进行编译 执行以下代码对上面的add.…
在构建react项目时,默认使用的webpack-dev-serve有热刷新功能,但是局限是修改一处会使整个页面刷新 当引入了react-hot-loader时,可以实现局部刷新,即同个页面上,某一处的数据修改不会让整个页面一起刷新 import React from 'react'; import ReactDOM from 'react-dom'; import {AppContainer} from 'react-hot-loader'; import App from './App';…
1.antd官网: https://ant.design/docs/react/introduce-cn 2.React中使用Antd 1.安装antd npm install antd --save / yarn add antd / cnpm install antd --save 2.在您的react项目的css文件中引入 Antd的css @import '~antd/dist/antd.css'; 3.看文档使用: 如使用Button: 1.在对应的组件中引入Antd import {…
前段时间有写过一个TypeScript在node项目中的实践. 在里边有解释了为什么要使用TS,以及在Node中的一个项目结构是怎样的. 但是那仅仅是一个纯接口项目,碰巧赶上近期的另一个项目重构也由我来主持,经过上次的实践以后,尝到了TS所带来的甜头,毫不犹豫的选择用TS+React来重构这个项目. 这次的重构不仅包括Node的重构(之前是Express的项目),同时还包括前端的重构(之前是由jQuery驱动的多页应用). 项目结构 因为目前项目是没有做前后分离的打算的(一个内部工具平台类的项目…
在公司的React前端项目中,发现有一个registerServiceWorker.js文件, 很久都没弄明白这个文件是干什么用的,查询了一些资料后,了解了一些 service worker是在后台运行的一个线程,可以用来处理离线缓存.消息推送.后台自动更新等任务. registerServiceWorker就是为react项目注册了一个service worker,用来做资源的缓存,这样你下次访问时,就可以更快的获取资源.而且因为资源被缓存,所以即使在离线的情况下也可以访问应用(此时使用的资源…
1.安装create-react-app:npm/cnpm installl create-react-app -g 2.创建项目:create-react-app my-first-app 3.此时项目里包含一个registerServiceWorker.js文件,作用是什么呢? service worker是在后台运行的一个线程,可以用来处理离线缓存.消息推送.后台自动更新等任务.registerServiceWorker就是为react项目注册了一个service worker,用来做资源…