请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

样式使用less是不是就没有提示了

老师,如果我把项目里的css换成less是不是就不能用css in js了?还有当一个元素有两个class该怎么用css in js呢?
比如:

<div class="a b"></div>

正在回答

1回答

第一个问题:

其实css in js说的是模组化css技术,技术与使用那种语言是没有关系的,所以使用less也可以使用css in js。我在网上找到一篇文章,详细介绍了如何通过wabpack来使用模组化less。

React + CSS Modules + LESS + Webpack 4 | by Joe Crick | Medium

https://medium.com/@joseph0crick/react-css-modules-less-webpack-4-a50d902d0a3

虽然文章是英文的,不过篇幅很短,而且大部分是代码,应该还是比较容易理解的。


第二个问题:

在react组件中,className属性我们需要使用引号( ""、''、或``)来包裹。那么对于多class,我们可以这样处理

https://img1.sycdn.imooc.com//szimg/60301189098c7b4311940544.jpg

https://img1.sycdn.imooc.com//szimg/6030118909583b3f16100384.jpg

  • 使用``来引用css

  • 使用 ${ } 来引用变量

不过,我们其实还有一个更好的方案,课程中并没有介绍(由于课程时长限制)。这个方案就是使用一个叫做classnames的第三方库:

https://www.npmjs.com/package/classnames

https://github.com/JedWatson/classnames

https://www.cnblogs.com/suihang/p/10417755.html


2 回复 有任何疑惑可以回复我~
  • 老师,关于 “className属性我们需要使用引号( ""、''、或``)来包裹。”
    
    这里不是将CSS转化为对象 styles,通过对象方式来引入,为什么还需要 “” 呢?课程里面是
    <div className={styles.robotList}>呀
    回复 有任何疑惑可以回复我~ 2022-04-15 08:15:37
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信