React   发布时间:2019-10-13  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了React-classnames库大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

今天在项目中看到了大佬引入了classnames,之前没用过所以去搜了搜,感觉还真的是挺好用的,搜到一篇很不错的文章,跟原创作者交流了一下就转载过来了!

下面废话不多说,我们直接来看文章吧

首先我们我们来看这个名字classnames一看就知道是跟className类名有关的,实际上也确实是这样,

那我们为什么要用这个

由于react原生动态添加多个className会报错

import style from

<div className={style.class1 style.class2}

想要得到最终渲染的效果是:

引入classnames库,安装:

BACkground-color: #ffffff; color: #993300">npm install classnames --save
使用:
import classnames from ''

<div className=<span style="color: #000000">classnames({
<span style="color: #008000">'class1': true,'class2': true<span style="color: #000000">
)>

后面的true省略,但这种我认为是比较直观的,可以对传入的class进行比较明显的动态判断

其他用法:
classNames('foo','bar'); 'foo bar' classNames('foo',{ bar: }); 'foo bar' classNames({ 'foo-bar': }); 'foo-bar' classNames({ 'foo-bar': false }); '' classNames({ foo: },{ bar: }); 'foo bar' classNames({ foo: ,bar: }); 'foo bar'

<span style="color: #008000">//<span style="color: #008000"> lots of arguments of various types
classNames('foo',{ bar: <span style="color: #0000ff">true,duck: <span style="color: #0000ff">false },'baz',{ quux: <span style="color: #0000ff">true }); <span style="color: #008000">//<span style="color: #008000"> => 'foo bar baz quux'

<span style="color: #008000">//<span style="color: #008000"> other falsy values are just ignored
classNames(<span style="color: #0000ff">null,<span style="color: #0000ff">false,'bar',undefined,1,{ baz: <span style="color: #0000ff">null },''); <span style="color: #008000">//<span style="color: #008000"> => 'bar 1'

    传入数组对象:

arr = ['b',{ c: ,d: false'a',arr); 'a b c'

   传入动态class

let buttonType = 'priMary'{ [`btn-${ButtonTypE}`]: });

可以直接在classname内部传入动态class并进行条件判断

Button ={ { btnClass = 'btn' (.state.isPressed) btnClass += ' btn-pressed' (.state.isHovered) btnClass += ' btn-over' ; );

classNames = require('classnames');

<span style="color: #0000ff">var Button =<span style="color: #000000"> React.createClass({
<span style="color: #008000">//<span style="color: #008000"> ...
<span style="color: #000000"> render () {
<span style="color: #0000ff">var btnClass =<span style="color: #000000"> classNames({
btn: <span style="color: #0000ff">true<span style="color: #000000">,'btn-pressed': <span style="color: #0000ff">this<span style="color: #000000">.state.isPressed,'btn-over': !<span style="color: #0000ff">this.state.isPressed && <span style="color: #0000ff">this<span style="color: #000000">.state.isHovered
});
<span style="color: #0000ff">return ;
<span style="color: #000000"> }
});

又学到了新东西,美滋滋啊,老铁们,我告辞了啊,下一篇文章见

@H_602_197@https://blog.csdn.net/duola8789/article/details/71514450 

大佬总结

以上是大佬教程为你收集整理的React-classnames库全部内容,希望文章能够帮你解决React-classnames库所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签:
猜你在找的React相关文章