首先设定一段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> ); }
如对本文有疑问, 点击进行留言回复!!
基于Angular 8和Bootstrap 4实现动态主题切换的示例代码
解决三元运算符 报错“SyntaxError: can''t assign to conditional expression”
解决angular 使用原生拖拽页面卡顿及表单控件输入延迟问题
使用 Angular RouteReuseStrategy 缓存(路由)组件的实例代码
分享Angular http interceptors 拦截器使用(推荐)
网友评论