通过表达式、函数给React组件属性赋值
2015-12-15 23:53
711 查看
一、需求
当有传属性name的值时,则显示Hello "name",否则显示Hello World
二、4种方式的代码实现
1.通过三元运算符
2.通过变量
3.直接在属性调用函数
4.用与运算
三、运行结果
当有传属性name的值时,则显示Hello "name",否则显示Hello World
二、4种方式的代码实现
1.通过三元运算符
<!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <script src="./react-0.13.2/build/react.js"></script> <script src="./react-0.13.2/build/JSXTransformer.js"></script> <script type="text/jsx"> var style = { color : "red", border: "1px #000 solid", }; var HelloWorld = React.createClass({ render: function(){ return <p>你好,{this.props.name ? this.props.name : "World!"} </p>; } }); React.render(<div style={style}><HelloWorld name="李小龙!"></HelloWorld></div>, document.body); </script> </body> </html>
2.通过变量
<!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <script src="./react-0.13.2/build/react.js"></script> <script src="./react-0.13.2/build/JSXTransformer.js"></script> <script type="text/jsx"> var style = { color : "red", border: "1px #000 solid", }; var HelloWorld = React.createClass({ getName : function(){ if(this.props.name) return this.props.name else return "World!" }, render: function(){ var name = this.getName(); return <p>你好, {name}</p>; } }); React.render(<div style={style}><HelloWorld name="李小龙!"></HelloWorld></div>, document.body); </script> </body> </html>
3.直接在属性调用函数
<!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <script src="./react-0.13.2/build/react.js"></script> <script src="./react-0.13.2/build/JSXTransformer.js"></script> <script type="text/jsx"> var style = { color : "red", border: "1px #000 solid", }; var HelloWorld = React.createClass({ getName : function(){ if(this.props.name) return this.props.name else return "World!" }, render: function(){ return <p>你好, {this.getName()}</p>; } }); React.render(<div style={style}><HelloWorld name="李小龙!"></HelloWorld></div>, document.body); </script> </body> </html>
4.用与运算
<!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <script src="./react-0.13.2/build/react.js"></script> <script src="./react-0.13.2/build/JSXTransformer.js"></script> <script type="text/jsx"> var style = { color : "red", border: "1px #000 solid", }; var HelloWorld = React.createClass({ render: function(){ return <p>你好, {this.props.name || "World!"}</p>; } }); React.render(<div style={style}><HelloWorld name="李小龙!"></HelloWorld></div>, document.body); </script> </body> </html>
三、运行结果
相关文章推荐
- react-native源码分析系列五 绘制js组件
- React的CSS
- React Native SDK location not found
- 第一个React程序HelloWorld
- 谈谈react-router学习
- Android React Native安装指南
- 学习 React Native for Android:环境搭建
- 第三讲:React Native & HTML5+(学习笔记1)
- React Native 组件样式测试
- Android:React Native 随记
- React.js入门
- react-native中碰到的问题
- Reactor And Proactor
- reactjs前端开发
- 最快让你上手ReactiveCocoa之基础篇
- React 入门实例教程
- React Native 使用问题记录
- React-Native环境配置
- React-Native植入原声应用 - Android
- ReactJs入门介绍