解决 Linux 部署中的文件大小写问题

问题背景

在本地开发环境(Windows/macOS)一切正常,但部署到 Linux 服务器后出现模块加载错误,核心原因是:

Linux 文件系统严格区分大小写

本地开发时 import Component from './MyComponent' 能加载 mycomponent.js

但部署后要求文件名必须完全匹配大小写:MyComponent.js

解决方案

1. ESLint 代码层检测

在编写阶段捕获错误:

javascript 复制代码
// .eslintrc.js
module.exports = {
  settings: {
    "import/resolver": {
      // 指向 Webpack 配置文件 让 ESLint 理解 Webpack 的模块解析规则
      webpack: { config: "./webpack.base.js" } 
    }
  },
  rules: {
    "import/no-unresolved": ["error", { 
      caseSensitive: true // 关键配置
    }]
  }
}

2. Webpack 构建层检测

在编译阶段阻断错误:

javascript 复制代码
// webpack.base.js
const CaseSensitivePathsPlugin = require('case-sensitive-paths-webpack-plugin');

module.exports = {
  plugins: [
    new CaseSensitivePathsPlugin() // 构建时大小写校验
  ]
};

配置要求

工具 安装依赖 核心配置
ESLint eslint-plugin-import eslint-import-resolver-webpack caseSensitive: true
Webpack case-sensitive-paths-webpack-plugin new CaseSensitivePathsPlugin()
相关推荐
HSunR25 分钟前
dify 搭建ai作业批改流
开发语言·前端·javascript
代码不加糖33 分钟前
2026 跨境电商独立站实战:从 0 到 1 搭建高转化 SaaS 商城(附源码)
开发语言·前端·javascript
亲亲小宝宝鸭1 小时前
拖一拖控件,拖出个问卷(低代码平台)
前端·低代码
江南十四行1 小时前
ReAct Agent 基本理论与项目实战(一)
前端·react.js·前端框架
We་ct1 小时前
LeetCode 72. 编辑距离:动态规划经典题解
前端·算法·leetcode·typescript·动态规划
小呆呆6662 小时前
Codex 穷鬼大救星
前端·人工智能·后端
当时只道寻常2 小时前
Vue3 + IntersectionObserver 实现高性能图片懒加载
前端
sakiko_3 小时前
UIKit学习笔记3-布局、滚动视图、隐藏或显示视图
前端·笔记·学习·objective-c·swift·uikit
有一个好名字3 小时前
Agent Loop —— 一切从那个 while 循环开始
前端·javascript·chrome
一天睡25小时3 小时前
Claude Code 指令入门教程
前端