React 1.8踩坑,模块化引入less样式不生效

2023-05-16

在看一个 react 项目的时候,项目中是直接引入 import style from './style.less' 

create-react-app 创建项目之后, react 脚手架里面是已经集成了css,sass的,先安装less,less-loader

npm install less less-loader

react 默认隐藏 webpack 配置文件。有个方法是 npm run eject 将 webpack 配置暴露出来,但操作不可逆,个人想尽量简单,所以直接改了 node_modules/react-scripts/config/webpack.config.js,这里用 npm run eject 将 webpack 配置暴露出来也是一样的配置。参考 sass 的配置在sassModuleRegex 下添加

const lessRegex = /\.less$/;
const lessModuleRegex = /\.less$/;

下面这部分需要在"file" loader makes sure those assets get 上添加,也是参考sassRegex和sassModuleRegex


{
  test: lessRegex,
  exclude: lessModuleRegex,
  use: getStyleLoaders(
    {
      importLoaders: 3, // 用于决定css文件中读取到@import时被外层数组中哪个处理
      sourceMap:  isEnvProduction
      ? shouldUseSourceMap
      : isEnvDevelopment,
      modules: {
        mode: 'icss',
      },
    },
    'less-loader'
  ),
  sideEffects: true, // 允许通过配置,标识代码是否有副作用
},
{
  test: lessModuleRegex,
  use: getStyleLoaders(
    {
      importLoaders: 3,
      sourceMap:  isEnvProduction
      ? shouldUseSourceMap
      : isEnvDevelopment,
      modules: {
        mode: 'local',
        getLocalIdent: getCSSModuleLocalIdent,
      }
    },
    'less-loader'
  ),
},

导入

import style from './style.less'

使用

<div className={style.app}></div>

结束。

这部分查了很多解决方式,react 引入 less,基本上都是const lessModuleRegex = /\.module\.less$/; 这样我写的普通样式 body {} 什么的都可以用,但是引入 style.app 就是undefind。困扰很久之后搜到了解决文。本来很久没用到CSDN,想到可能有人会和我一样就纪录一下。

lessModuleRegex 负责 less 模块化,/\.module\.less$/ 需要文件名 xx.module.less 的形式引入才能使用 {style.xx} 这种用法

(110条消息) react18中配置webpack,支持less以及less模块化(补充篇)_新生代农民工官方认证码农小拽的博客-CSDN博客_less模块化

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

React 1.8踩坑,模块化引入less样式不生效 的相关文章

  • 在 Less 中连接字符串

    我认为这是不可能的 但我想我问是否有办法 我的想法是 我有一个用于 Web 资源文件夹路径的变量 root img file test css url root file px background image url url 我得到这个结
  • Intellij IDEA 11:如何从 .less 编译 .css?

    如何在 intellij 中从 less 编译 css 当然这应该很容易 但它让我难住了 有人知道怎么做吗 我写了一个当 LESS 文件发生变化时 它会自动将它们编译为 CSS 您可以配置多个 LESS 目录来监视每个项目 每个目录的输出将
  • 无法使用 Web Compiler 2015 编译嵌套的 less 文件

    好吧 当我为 Visual Studio 2015 安装 Web Essentials 2015 时 我感到非常惊讶 因为它不再包含 less 编译器 Web Essentials 2015 不再包含捆绑和缩小 JS CSS 和 HTML
  • 在 LESS 中生成供应商前缀

    我已经将这种方法拼凑在一起 使用 LESS 生成供应商前缀的属性和动画 首先是一些工厂函数 vendorprefix property value webkit property value moz property value ms pr
  • 通过 less 生成 CSS 组

    是否能够创建这样一个生成CSS组的mixin 我将在下面解释我的意思 fancymixin max prefix content what I don t know how to code fancymixin 10 x 它会生成类似以下内
  • 在字符串内使用带有 LESS 的函数

    我搜索了文档和 SO 但找不到我的查询的答案 使用 LESS 将函数结果包含在字符串中的正确方法是什么 例如 我定义了一个变量 并希望将其变亮以形成盒子阴影 例如 这就是我想做的事情 box shadow inset 0 1px 1px r
  • wp_enqueue_style 和 rel 除了样式表之外?

    我创建 或者更好地尝试 使用 Less 创建我的第一个 WordPress 主题 我所做的就是在我的functions php中使用这样的脚本 wp register style screen css get bloginfo templa
  • 如何使用 16 或 24 列的 bootstrap

    我需要一些帮助将 bootstrap 2 0 4 设置为 16 或 24 列 而不是默认的 12 列 我无法理解我做错了什么我尝试了 bootstrap 站点上的自定义选项 并尝试更改变量中的网格变量 less 文件并使用 Crunch 重
  • Less 和 Bootstrap:如何使用 span3 (或 spanX [任意数字])类作为 mixin?

    是否可以添加span3类中的 mixin 以避免将其放入 HTML 中的每个元素中 就像是 myclass span3 other rules EDIT 抱歉 我忘记指定一个重要细节 span3是 Bootstrap 的标准类 我在Boot
  • 当项目中有多个文件时,如何使用 Grunt 配置 LESS 的 sourceMap?

    我有多个 less 文件 我希望将它们处理为匹配的 css 每个文件的 sourceMaps 都与源位于同一文件夹中 这有多难 我用 less 直接执行此操作没有问题 但无法弄清楚如何在 grunt contrib less 中执行此操作
  • Webpack 2 的语义 UI 问题

    一直在努力使用 Webpack 2 进行语义 ui 设置 我遇到了一些与默认语义 ui 主题中的字体相关的错误 以及另一个关于image webpack loader ERROR in css loader lessPlugins opti
  • 删除编译时的 LESS // 注释

    是否可以配置LESS在通过JS编译时删除 注释 我想从输出的 less 文件中删除它们 Less的单行注释 根据文档所述 应该保持沉默 单行注释在 LESS 中也有效 但它们是 沉默的 它们不会出现在编译后的 CSS 输出中 Hi I m
  • 在 Dockerfile 中安装节点?

    我是AWS elastic beanstalk的用户 我遇到了一些问题 我想用 less node 构建我的 CSS 文件 但我不知道在使用 jenkins 构建时如何在 dockerfile 中安装节点 这是我在 docker 中使用的安
  • 在 React 中使用 .less 文件

    我正在尝试将 less 文件与极简主义 React 应用程序一起使用 使用创建反应应用程序 我已经添加less and less loader to my 包 json以及我的模块规则webpack config js文件 然而 类引用并未
  • 如何使用 Antd / Less 和 Sass / CSS 模块配置 Next.js

    我想用Next js https nextjs org 带有 Sass 和 CSS 模块但也想使用蚂蚁设计 https ant design 并希望对较小的建筑尺寸使用 Less 样式 我可以启用 CSS 模块或 Less 加载器 但不能同
  • 将变量从 JSON 文件加载到 LESS CSS 预处理器中

    是否可以像使用 Stylus 一样将变量从 JSON 文件加载到 LESS CSS 预处理器中 与文件内容myvars json color1 112345 color2 667890 在 Stylus 中我 json myvars jso
  • 使用 grunt 编译具有不同变量的 LESS

    我有基于 Bootstrap 的 HTML 模板 有不同的颜色 红色 绿色等 颜色正在改变使用 brand变量在variables less 现在我转到这个文件 更改变量 编译 less 文件 进入已编译的 css 文件目录并重命名 CSS
  • 使用 PHP 自动将引用的 LESS 文件编译为 CSS

    我希望发生以下事情 让流程在服务器端自动化 只需能够像在代码中引用 CSS 文件一样引用 LESS 文件 用户将返回缩小的 CSS 而不是缓存的 LESS 文件 因此编译器不需要运行 除非 LESS 文件已更新 为了这个工作any在我的域内
  • 我可以覆盖调用范围中的全局变量吗

    我需要覆盖 mixin 中使用的一些全局变量 但是我不愿意只改变全局空间中的变量 那么就不会被覆盖 考虑这个给定的 mixin 以及定义的所需变量 Mixin and adjust the regular image class thumb
  • 在 ASP.NET Core 2 中的layout.cshtml 中使用和路由Less 文件

    我用过管理部分的模板 引导管理模板 https github com puikinsh Bootstrap Admin Template在我的项目中并安装它Bower我已经申请了ASP NET Core 2 当我运行该项目时 我收到一个错误

随机推荐

  • Mysql5.7版本中,查询分组GROUP BY通过子查询中ORDER BY进行排序无效的问题解决办法

    前言 xff1a 使用场景 xff0c 查询用户所访问的同一个客服的列表 xff0c 但是存在多次访问的情况 xff0c 这时候就需要使用分组 xff0c 获取客户访问的所有客服 且通过子查询提前将交互时间 xff08 最后一次访问客服时间
  • 在MAC上快速升级GO版本

    只需三步 xff0c 在MAC迅速完成升级GO版本 1 删除原有版本 xff08 1 xff09 查看go的安装路径 which go xff08 2 xff09 执行删除 xff0c 一般路径是 usr local go bin go r
  • PHP使用chilkat入门教程

    前言 xff1a 我们需要先确认自己的版本 xff0c 在PHP中 xff0c 可以利用phpinfo 函数来查看php是ts版本还是nts版本 xff0c 该方法可以展示出当前phpinfo信息 xff0c 若 Thread Safety
  • Go 语言中的 Chilkat 入门(Linux 64 位)

    这是在 Go 编程语言中使用 Chilkat 获得 Hello World 的演练 我们将从头开始 xff0c 下载 Go 并运行一个简单的 Hello World Go 示例 然后我们将安装 Chilkat 并构建和运行示例程序 1 我的
  • phpstudy出现80端口被占用,占用进程为system

    背景 公司分配的电脑是还未离职的另外一位同事 主管要求我不能重装电脑 问题 使用这台电脑的phpstudy环境发现所调用的接口是9096端口 xff0c 在站点域名配置的时候发现一个很麻烦的问题 xff0c 就是在hosts文件设置127
  • Centos7安装vmware workstation

    VMware Workstation在windows环境中大家都会安装 xff0c 但是如何在Linux环境下安装呢 xff1f 1 你需要下载vmware workstation的Linux的安装包 xff0c 下载完后是个 bundle
  • QtCreator 远程调试 (win10亲测)

    一 终端设备环境搭架 实测终端设备是windows8 1 windows10都测试成功 xff1b 1 安装WinDbg xff0c 使用winDbg中的cdb exe来启动远程调试服务 xff1b 可下载Windows Kits进行安装D
  • VSCode 使用教程-3.设置主题文件图标与字体大小

    前言 VSCode 可以根据自己的喜好设置不同的主题 xff0c 字体大小也可以调整 设置主题 点开设置 颜色主题 按上下键可以切换主题 xff0c 看到预览效果 选好自己喜欢的主题 xff0c 点击就设置成功了 设置字体大小 编辑界面默认
  • ping 超时原因

    ping超时 xff0c 不通 xff0c 没结果主要有三方面参考 xff1a 网站服务器真的不通 xff0c 服务器出现故障了 xff0c 要联系服务器管理员处理 客户端电脑与服务器之间 xff0c 网络设备出现故障 xff0c 要通过路
  • 使用Rclone实现网盘挂载

    使用Rclone实现网盘挂载 xff08 Windows xff09 一 为啥要用Rclone 最近发现了一个 好 工具 RaiDrive 这是一款能够将一些网盘映射为本地网络磁盘的工具 xff0c 支持 Google Drive Goog
  • 最短路与动态规划(一)

    运筹学有时候面临的一种场景是求最短路 xff08 shortest path xff09 问题 xff1a 比如城市交通的网络设计 xff0c 芯片的表面设计等 解决这类问题常用离散动态规划 xff08 discrete dynamic x
  • Linux下C++内存泄露的检查方法

    方法目录 内存泄漏介绍内存检查工具一 valgrind内存检查工具二 AddressSanitizer 推荐 内存泄漏介绍 1 内存泄露 memory leak xff0c 是指程序在申请内存后 xff0c 无法释放已申请的内存空间 xff
  • Ubuntu 下设置不锁屏(不休眠)

    点击进入
  • Ubuntu 下的根目录为

    根目录为 xff1a 如果我们要进入tmp user里 xff0c 只需要输入cd tmp user 即可 例如 xff1a wangrui span class token annotation punctuation 64 bsp sp
  • MySQL8开启SSL加密

    1 概述 MySQL从5 7开始默认开启SSL加密功能 xff0c 进入MySQL控制台后输入status可以查看SSL的状态 xff0c 出现下图表示在使用SSL xff1a 另外 xff0c 加密连接需要密钥与证书 xff0c 可以使用
  • 服务器上的内容无法复制到本机

    服务器上的内容无法复制到本地 xff0c 显示 xff1a 复制文件或文件夹出错 xff0c 未指定的错误 打开远程桌面连接 本地资源 详细信息 勾选下面的几项 xff0c 确定 然后打开任务管理器 xff0c 查看是否有 rdpclip
  • linux ping报错Name or service not known

    设置静态ip以后忘记设置dns xff0c ping的时候报错 xff1a Name or service not known 添加dns即可 span class hljs title vi span etc resolv conf na
  • 如何为SUSE配置IP地址,网关和DNS

    方法一 在命令行中配置 输入 xff1a ifconfig eht0 9 111 66 96 netmask 255 255 255 0 up route add default gw 9 111 66 1 方法二 在文件中设置 示例参数
  • TCP协议理解和用法以及三次握手四次分手

    TCP协议 1 TCP网络分层 应用层 xff0c 传输层 xff0c 网络互联层 xff0c 网络访问层 xff0c 物理层 应 层 应 程序之间如何相互传递报 xff0c 如HTTP协议 传输层 传输层的作 是为两台主机之间的 应 进程
  • React 1.8踩坑,模块化引入less样式不生效

    在看一个 react 项目的时候 xff0c 项目中是直接引入 import style from 39 style less 39 create react app 创建项目之后 xff0c react 脚手架里面是已经集成了css xf