React入门---JSX内置表达式-6
个人理解:接触的JSX就是在React中render方法里面的js,因为里面只能有一个节点,所以你写的东西都在一个div中,要有js所以通过JSX来表达。(个人菜鸟理解,欢迎指正)
React 使用 JSX 来替代常规的 JavaScript。
JSX 是一个看起来很像 XML 的 JavaScript 语法扩展。
1.在JSX中注释需要下载花括号中,语法 {/*注释*/}
2.在 JSX 中不能使用 if else 语句,但可以使用 conditional (三元运算) 表达式来替代。
例:
usermane不为空
render(){
//usermane不为空
var username="阿泽大大";
return(
<div>
<h1>这里是主体内容部分</h1>
{/*这是注释的格式*/}
{/*下面三元表达式*/}
<p>{username=='' ? '用户未登录' : '用户名:'+username}</p>
</div>
)
}
//运行结果 用户名:阿泽大大 (运行时和前面一样,通过http://localhost:8080运行,webpack-dev-server)
usermane不为空
render(){
//usermane不为空
var username="";
return(
<div>
<h1>这里是主体内容部分</h1>
{/*这是注释的格式*/}
{/*下面三元表达式*/}
<p>{username=='' ? '用户未登录' : '用户名:'+username}</p>
</div>
)
}
//运行结果 用户未登录
3.布尔判断 true / false
例:
bool为真
render(){
//bool为真
var bool=true; return(
<div>
<h1>这里是底部</h1>
{/*通过true/false来控制按钮是否被禁用; disabled={} 不用'',绑带动态属性时不用''*/}
<p><input type='button' value='默认按钮' disabled={bool}/></p>
</div>
)
}
//运行结果 按钮被禁用
bool为真
render(){
//bool为假
var bool=false; return(
<div>
<h1>这里是底部</h1>
{/*通过true/false来控制按钮是否被禁用; disabled={} 不用'',绑带动态属性时不用''*/}
<p><input type='button' value='默认按钮' disabled={bool}/></p>
</div>
)
}
//运行结果 按钮正常使用
4.解析HTML
例:解析空格
render(){
//声明一个html
var html="HELLO WORLD"; return(
<div>
<h1>这是头部</h1>
<p>{html}</p>
</div>
);
}
//运行结果 HELLO WORLD 并没有将 解析为html的空格
解决方法1:对html的标记做Unicode转码 (http://tool.chinaz.com/)
render(){
//声明一个html
//进行了unicode转码( ---\u0020)
var html="HELLO\u0020WORLD"; return(
<div>
<h1>这是头部</h1>
<p>{html}</p>
</div>
);
}
//运行结果 HELLO WORLD 完成html空格解析
解决方法2:使用参数dangerouslySetInnerHTML进行html解码
render(){
//声明一个html
//进行了unicode转码( ---\u0020)
var html="HELLO WORLD"; return(
<div>
<h1>这是头部</h1>
{/*参数dangerouslySetInnerHTML 可能会造成XSS攻击*/}
<p dangerouslySetInnerHTML = {{__html : html}}></p>
</div>
);
}
//运行结果 HELLO WORLD 完成html空格解析
还有更多JSX的内置表达式:http://www.runoob.com/react/react-jsx.html
React入门---JSX内置表达式-6的更多相关文章
- React(三)JSX内置表达式
(一)JSX是什么? React 使用 JSX 来替代常规的 JavaScript. JSX 是一个看起来很像 XML 的 JavaScript 语法扩展. 我们不需要一定使用 JSX,但它有以下优点 ...
- React入门-JSX和虚拟dom
1.JSX理解 举例: const element = <h1>Hello, world!</h1>; 这被称为 JSX,是一个 JavaScript 的语法扩展.建议在 Re ...
- python exec内置表达式--exec()
exec obj功能: exec 执行储存在字符串或文件中的Python语句,相比于 eval,exec可以执行更复杂的 Python 代码.obj 是 要执行的表达式.exec 返回值永远为 Non ...
- 简话Angular 03 Angular内置表达式大全
一句话: 大多数html标签属性和事件都有一个对应的ng指令 说明:这些指令和原生html最大的区别就是可以动态更新.比如一个div的样式用ng-class后,我们就可以随意应用css class. ...
- iMacros 入门教程-内置变量介绍(5)
iMacros 的变量类型 1.!VAR0 到 !VAR9,这是系统定义的内置变量,专门给你赋值用 就是程序设定了这几个名字给你赋值 2.内建变量 就是 imacros 设定的特别作用的变量,例如 ! ...
- React入门--------JSX
React学习网站 React官方英文网站:http://reactjs.cn/react/docs/top-level-api.html React官方中文网站:http://www.css88.c ...
- PYTHON基础入门(内置函数、推导式)学习
**内建函数**1.通过使用dir()函数可以列出所具备的方法 例:num = 10 dir(num) 例:myList = [1,2,3,4,5,6] dir(num)2.通过使用help()函数可 ...
- Python入门:内置函数
可创建一个整数列表,一般用在 for 循环中. 函数语法 range(start, stop[, step]) 参数说明: start: 计数从 start 开始.默认是从 0 开始.例如range( ...
- React入门---基础知识-大纲-1
-----------------在慕课网学习react入门笔记-------------- ---------博主边学边记录,手把手进行学习及记录---------- --------------- ...
随机推荐
- 【Java 并发】详解 ThreadLocal
前言 ThreadLocal 主要用来提供线程局部变量,也就是变量只对当前线程可见,本文主要记录一下对于 ThreadLocal 的理解.更多关于 Java 多线程的文章可以转到 这里. 线程局部变量 ...
- Python3.6安装
1.安装依赖包#yum install -y openssl openssl-devel openssl-static#yum groupinstall -y "Development to ...
- python之函数学习
#!/usr/bin/env python # # =============================================== # 位置参数说明 # 位置参数 通过参数传递的位置来 ...
- WebApp框架
我所知道的webapp开发框架,欢迎补充, Framework7包含ios和material两种主题风格并且有vue版和react版, vue发现一个vue-material, react有一款mat ...
- 提交到SVN中的项目被删除 且项目名已经被新建项目占用找回方法
提到项目找回,一看就头疼,找回起来较麻烦.下面就讲一下. 首先,确定项目是否被删除?找项目,太多了,都被找一遍了,还是没找到,看看就头痛,换了个方法,找了个项目的包,xx.apk,反编译下吧,过程略, ...
- DataTable源码分析(二)
DataTable源码分析(二) ===================== DataTable函数分析 ---------------- DataTable作为整个插件的入口,完成了整个表格的数据初 ...
- css浮动布局
上次我们一起对盒子模型进行了一定的了解,今天我们就对css浮动布局做一下研究.首先我们来了解一下网页基本布局的三种形式. 首先我们来了解一下什么是网页布局: 网页的布局方式其实就是指浏览器是如何对网页 ...
- 介绍三个Android支持库控件:TabLayout+ViewPager+RecyclerView
本文主要介绍如下三个Android支持库控件的配合使用: TabLayout:android.support.design.widget.TabLayout ViewPager:android.sup ...
- js原型对象
原型对象是什么? 在js中,每一个创建的的函数都会有一个prototype属性,这个属性指向一个对象,这个对象就是原型对象 function lla(){} console.log(lla.proto ...
- 使用python发送QQ邮件
这里用到了Python的两个包来发送邮件: smtplib 和 email . Python 的 email 模块里包含了许多实用的邮件格式设置函数,可以用来创建邮件“包裹”.使用的 MIMEText ...