less中:export 无效问题,vue-cli中导出公共变量,js对象为空对象
1、版本:
vue:2.6.14
@vue/cli:5.0.8
2、全局变量文件:
// variables.less @themeColor: #00978D; @pageBgColor: #f2f8f7; // CSS Module 有一个:export关键字,它在功能上等同于 ES6 的关键字export,即导出一个 js 对象。 :export { name: "less"; themeColor: @themeColor; }
3、vue中使用:把样式变量共享给js使用
<template> <div id="app" class="box"></div> </template> <script> import variables from './styles/variables.less'; export default { data() { return { variables, }; }, created() { console.log(this.variables, "variables"); } }; </script>
注:在vue-cli v5版本中requireModuleExtension是已经被移除了。在没有任何配置的情况下打印出来的就是一个空对象
4、解决方案
通过阅读官方文档,发现可以根据约定将文件名改为.module.(css|scss|sass|less|styl(us)?)
结尾,这样就可以识别出css module。
这里是将自己项目中的variables.less改成了variables.module.less,可以发现确实生效可以获取到正常的js对象。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人