react-statements是一个很小的React语句控制组件,更漂亮的条件渲染方法。
npm i --save react-statements yarn add react-statements
import { If } from 'react-statements'class Example extends React.Component { constructor(props) { super(props); this.state = {logic: true}; } render() { return ( <div> <If when={this.state.logic}> <p>我是一些组件内容</p> </If> </div> ); } }
If
组件可以使用一个when
属性来控制组件是否渲染
<If when={condition}> <p>when在转为bool为true的条件下显示这个组件</p> </If> <If when={condition} children={<p>使用方法同上,单标签方法中使用</p>} />
Switch
组件可以根据指定的值渲染不同的组件
Switch
组件内部使用Case
组件对不同的值进行判断
Switch
组件内部同时可以使用Default
来设置一个默认显示组件
<Switch value={value}> <Case when={condition}> <p>condition 1</p> </Case> <Case when={condition}> <p>condition 2</p> </Case> <Case when='c' children={<p>condition 3</p>}/> <Default children={<p>默认组件</p>}/> </Switch>
For
组件可以对Array
、Object
遍历生成一组组件
For
组件内部也可以使用Default
来显示默认组件
<For of={['a', 'b', 'c']}> {(item, index) => (<p key={index}>{index}:{item}</p>)} <Default>默认组件</Default></For>
一、为什么如此难受? 在我们去写 JSX 的时候,有时候一直在感叹为什么在 JSX 里面写不了条件语句,举个栗子?(为什么都举我): render () { return ( <div> { if(true) { <span>渲染我</span>
最近接手了一个简单的项目,需要修改一些逻辑,时间也比较充裕,正好适合我这个小白边学边做。其中涉及了一些知识点,包括redux和router。所以今天先开始学习阮一峰大神的react router教程 看完这篇文章之后才知道react-router v4和v3有很大区别。在v4里面主要引用react-router-dom获得组件。 一、基本用法: import { Router, Route, ha
1.运行测试 Create React App使用Jest作为其测试运行器。为进行此集成做准备,我们对Jest进行了重大改进,因此,如果几年前您听到有关Jest的坏消息,请尝试一下。 Jest是基于Node的运行器。这意味着测试始终在Node环境中运行,而不是在实际的浏览器中运行。这使我们能够实现快速的迭代速度并防止松散。 虽然Jest提供了浏览器全局如window和jsdom,他们是只有
一、基本用法 React Router 安装命令如下。 $ npm install -S react-router 使用时,路由器Router就是React的一个组件。 import { Router } from 'react-router'; render(<Router/>, document.getElementById('app')); Router组件本身只是一个容器,真正的路由
ReactRouter(V2)基础 1.路由 路由就是Router,这里的路由并不是我们在计算机网路中所学的路由的概念,而是前端的‘路由’,简单的来说就是通过URL的变化,使用路由来跳转到相对应的路径来显示不一样的页面,虽然只是这么一个小功能,但是它却是web应用中一个非常非常非常重要的一步。一个只会写页面的前端工程师不是工程师,顶多就是个工人,工程师的目标就是去架构,去优化,去理解,去运用。所以
真正学会 React 是一个漫长的过程。 你会发现,它不是一个库,也不是一个框架,而是一个庞大的体系。想要发挥它的威力,整个技术栈都要配合它改造。你要学习一整套解决方案,从后端到前端,都是全新的做法。 举例来说,React 不使用 HTML,而使用 JSX 。它打算抛弃 DOM,要求开发者不要使用任何 DOM 方法。它甚至还抛弃了 SQL ,自己发明了一套查询语言 GraphQL 。当然,这些你都
node安装: sudo apt install nodejs 数据类型: 1.Number(数字) 2.String(字符串) 3.Boolean(布尔) 4.Symbol(符号) 5.Object(对象) Function(函数) Array(数组) Date(日期) RegExp(正则表达式) 6.null(空) 7.undefined(未定义) JavaScript 还有一种内置的 Er
react-router是一个基于react的路由库,它可以让你向应用中快速的添加视图和数据流,同时保持页面与URL之间的同步。 路由配置 1. 不使用React-Router的情形 import React from 'react' import {render} from 'react-dom' const About = React.createClass({...}) const Inb
在Objective-C编程中nest if-else语句总是合法的,这意味着你可以在另一个if或else if语句中使用if或else if语句。 语法 (Syntax) nested if语句的语法如下 - if( boolean_expression 1) { /* Executes when the boolean expression 1 is true */ if(bool
在Pascal编程中嵌套if-else语句总是合法的,这意味着你可以在另一个if或else if语句中使用if或else if语句。 Pascal允许嵌套到任何级别,但是,如果依赖于特定系统上的Pascal实现。 语法 (Syntax) 嵌套if语句的语法如下 - if( boolean_expression 1) then if(boolean_expression 2)then S1 e
在Swift 4中嵌套if-else语句总是合法的,这意味着你可以使用一个if else if else if语句。 语法 (Syntax) nested if语句的语法如下 - if boolean_expression_1 { /* Executes when the boolean expression 1 is true */ if boolean_expression_2 {
另一个If或ElseIf语句中的If或ElseIf语句。 内部If语句基于最外面的If语句执行。 这使VBScript可以轻松处理复杂的条件。 语法 (Syntax) 以下是VBScript中Nested If语句的语法。 If(boolean_expression) Then Statement 1 ..... ..... Statement n If(boolea
在条件解析为true后,您可能希望检查其他条件。 在这种情况下,您可以使用嵌套的if结构。 在嵌套的if结构中,你可以在另一个if...elif...else构造中使用if...elif...else构造。 语法 (Syntax) 嵌套if...elif...else结构的语法可能是 - if expression1: statement(s) if expression2:
nest if-else语句总是合法的,这意味着你可以在另一个if或else if语句中使用if或else if语句。 语法 (Syntax) nested if语句的语法如下 - if( boolean_expression 1) { // Executes when the boolean expression 1 is true if(boolean_expression 2)
nest if-else语句在C编程中总是合法的,这意味着你可以在另一个if或else if语句中使用if或else if语句。 语法 (Syntax) nested if语句的语法如下 - if( boolean_expression 1) { /* Executes when the boolean expression 1 is true */ if(boolean_expres
nest if-else语句在C#中始终是合法的,这意味着你可以在另一个if或else if语句中使用if或else if语句。 语法 (Syntax) nested if语句的语法如下 - if( boolean_expression 1) { /* Executes when the boolean expression 1 is true */ if(boolean_expres