在React框架中实现一些AngularJS中ng指令的例子


Posted in Javascript onMarch 06, 2016

首先设定一段Angularjs代码的ng-class:

<i class="header-help-icon down" ng-class="{up:showMenu}"></i>

 
比较容易理解的Angularjs ng-class设置样式代码,那我们使用React怎么去实现它呢?

首先在state设置一个变量比如: isShowLoginMenu,在不同场景改变它的值,然后在绑定在class样式上面  
  

<i className={"header-help-icon down" + (this.state.isShowLoginMenu ? ' up' : '')}></i>

  or  

<span id="vip-header-logo" className={'vip-logo icon-vip-v' + this.state.vipLevel}></span>

使用Angularjs我们可以这样做:

<div class="logined" ng-show="isLogin">登录了</div> 
<div class="logined" ng-if="isLogin">你好,{userName}</div> 
<div class="no-login" ng-hide="isLogin">未登录</div>

 
 
那我们使用React要怎么去实现这样的场景呢?

React.createClass({ 
 getInitialState: function() { 
  return { 
   isLogin: true, 
   userName: 'Joe' 
  }; 
 }, 
 
 render: function() { 
   var isLogin = this.state.isShowLoginMenu, 
   loginHtml; 
 
   if (isLogin) { 
    loginHtml = 
     <div className="logined"> 
      登录了,欢迎{this.state.userName} 
     </div>; 
   } else { 
    loginHtml = 
     <div className="no-login"> 
      未登录 
     </div>; 
   } 
 
  return ( 
    <div className="user"> 
     {loginHtml} 
    </div> 
  ); 
 }
Javascript 相关文章推荐
用JavaScript页面不刷新时全选择,全删除(GridView)
Apr 14 Javascript
在IE下获取object(ActiveX)的Param的代码
Sep 15 Javascript
EXT中xtype的含义分析
Jan 07 Javascript
合并table相同单元格的jquery插件分享(很精简)
Jun 20 Javascript
那些年,我还在学习jquery 学习笔记
Mar 05 Javascript
弹出窗口并且此窗口带有半透明的遮罩层效果
Mar 13 Javascript
js基于面向对象实现网页TAB选项卡菜单效果代码
Sep 09 Javascript
javascript replace()第二个参数为函数时的参数用法
Dec 26 Javascript
Vue数据驱动模拟实现2
Jan 11 Javascript
Vue-cli配置打包文件本地使用的教程图解
Aug 02 Javascript
微信小程序实现点击生成随机验证码
Sep 09 Javascript
vuex Module将 store 分割成模块的操作
Dec 07 Vue.js
javascript实现label标签跳出循环操作
Mar 06 #Javascript
使用JavaScript脚本判断页面是否在微信中被打开
Mar 06 #Javascript
JavaScript实现图片滑动切换的代码示例分享
Mar 06 #Javascript
使用jQuery或者原生js实现鼠标滚动加载页面新数据
Mar 06 #Javascript
AngularJS页面访问时出现页面闪烁问题的解决
Mar 06 #Javascript
JavaScript模拟数组合并concat
Mar 06 #Javascript
JavaScript模拟push
Mar 06 #Javascript
You might like
基于文本的搜索
2006/10/09 PHP
php cookie 作用范围?不要在当前页面使用你的cookie
2009/03/24 PHP
PHP实现在线阅读PDF文件的方法
2015/06/23 PHP
PHP实现通过URL提取根域名
2016/03/31 PHP
php实现微信小程序授权登录功能(实现流程)
2019/11/13 PHP
一文看懂PHP进程管理器php-fpm
2020/06/01 PHP
javascript中的delete使用详解
2013/04/11 Javascript
基于JavaScript 声明全局变量的三种方式详解
2013/05/07 Javascript
基于javascript 闭包基础分享
2013/07/10 Javascript
AngularJS模仿Form表单提交的实现代码
2016/12/08 Javascript
Vue.js 2.0 移动端拍照压缩图片预览及上传实例
2017/04/27 Javascript
使用Node.js实现简易MVC框架的方法
2017/08/07 Javascript
JavaScript表单即时验证 验证不成功不能提交
2017/08/31 Javascript
基于casperjs和resemble.js实现一个像素对比服务详解
2018/01/10 Javascript
微信小程序下拉框搜索功能的实现方法
2019/07/31 Javascript
微信小程序换肤功能实现代码(思路详解)
2020/08/25 Javascript
结合axios对项目中的api请求进行封装操作
2020/09/21 Javascript
vue使用echarts图表自适应的几种解决方案
2020/12/04 Vue.js
[06:25]第二届DOTA2亚洲邀请赛主赛事第二天比赛集锦.mp4
2017/04/03 DOTA
Python天气预报采集器实现代码(网页爬虫)
2012/10/07 Python
python 读写、创建 文件的方法(必看)
2016/09/12 Python
利用numpy实现一、二维数组的拼接简单代码示例
2017/12/15 Python
python实现扫描局域网指定网段ip的方法
2019/04/16 Python
Python创建一个元素都为0的列表实例
2019/11/28 Python
python时间序列数据转为timestamp格式的方法
2020/08/03 Python
python两个list[]相加的实现方法
2020/09/23 Python
W3C公布最新的HTML5标准草案
2008/10/17 HTML / CSS
英国电信商店:BT Shop
2019/12/17 全球购物
澳大利亚一站式数码相机商店:CameraPro
2020/03/09 全球购物
植树节标语
2014/06/27 职场文书
后勤管理员岗位职责
2014/08/27 职场文书
2015年企业新年寄语
2014/12/08 职场文书
焦裕禄纪念馆观后感
2015/06/09 职场文书
评估“风险”创业计划的几大要点
2019/08/12 职场文书
SqlServer数据库远程连接案例教程
2021/07/15 SQL Server
Nginx配置之实现多台服务器负载均衡
2021/08/02 Servers