在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 相关文章推荐
js当一个变量为函数时 应该注意的一点细节小结
Dec 29 Javascript
js批量设置样式的三种方法不推荐使用with
Feb 25 Javascript
9款2014最热门jQuery实用特效推荐
Dec 07 Javascript
javascript变量声明实例分析
Apr 25 Javascript
微信企业号开发之微信考勤Cookies的使用
Sep 11 Javascript
使用jquery给新生的th绑定hover事件的实例
Feb 10 Javascript
JavaScript之class继承_动力节点Java学院整理
Jul 03 Javascript
Vue-router 类似Vuex实现组件化开发的示例
Sep 15 Javascript
ionic3实战教程之随机布局瀑布流的实现方法
Dec 28 Javascript
微信小程序数字滚动插件使用详解
Feb 02 Javascript
微信小程序点击滚动到指定位置的实现
May 22 Javascript
最全vue的vue-amap使用高德地图插件画多边形范围的示例代码
Jul 17 Javascript
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
PHP图片等比缩放类SimpleImage使用方法和使用实例分享
2014/04/10 PHP
使用php实现网站验证码功能【推荐】
2017/02/09 PHP
PHP实现的简单异常处理类示例
2017/05/04 PHP
PHP实现获取毫秒时间戳的方法【使用microtime()函数】
2019/03/01 PHP
精通JavaScript 纠正 cleanWhitespace函数
2010/03/11 Javascript
jQuery选择器中含有空格的使用示例及注意事项
2013/08/25 Javascript
js的2种继承方式详解
2014/03/04 Javascript
js转化毫秒为时间格式代码
2014/04/10 Javascript
javascript学习笔记(三)BOM和DOM详解
2014/09/30 Javascript
JavaScript头像上传插件源码分享
2016/03/29 Javascript
js 获取当前web应用的上下文路径实现方法
2016/08/19 Javascript
JS正则表达式验证账号、手机号、电话和邮箱是否合法
2017/03/08 Javascript
JavaScript+Html5实现按钮复制文字到剪切板功能(手机网页兼容)
2017/03/30 Javascript
纯JS实现出生日期[年月日]下拉菜单效果
2018/06/01 Javascript
Vue.js上传图片到阿里云OSS存储的方法示例
2018/12/13 Javascript
原生js实现可兼容PC和移动端的拖动滑块功能详解【测试可用】
2019/08/15 Javascript
浅谈layui分页控件field参数接收对象的问题
2019/09/20 Javascript
在vue中使用vuex,修改state的值示例
2019/11/08 Javascript
vue+ts下对axios的封装实现
2020/02/18 Javascript
jQuery加PHP实现图片上传并提交的示例代码
2020/07/16 jQuery
Python二分查找详解
2015/09/13 Python
python+matplotlib绘制3D条形图实例代码
2018/01/17 Python
Django 限制用户访问频率的中间件的实现
2018/08/23 Python
PyCharm中如何直接使用Anaconda已安装的库
2020/05/28 Python
Python根据指定文件生成XML的方法
2020/06/29 Python
实例讲解使用HTML5 Canvas绘制阴影效果的方法
2016/03/25 HTML / CSS
html5自动播放mov格式视频的实例代码
2020/01/14 HTML / CSS
如何手工释放资源
2013/12/15 面试题
保安的辞职报告怎么写
2014/01/20 职场文书
网上商城创业计划书范文
2014/01/31 职场文书
毕业生面试求职信
2014/06/23 职场文书
护士长2014年度工作总结
2014/11/11 职场文书
公务员年度考核登记表个人总结
2015/02/12 职场文书
大学生入党自荐书
2015/03/05 职场文书
邮政营业员岗位职责
2015/04/14 职场文书
2015年九一八事变纪念活动实施方案
2015/05/06 职场文书