【问题标题】:Webpack resolve.alias OS-specific errorWebpack resolve.alias 特定于操作系统的错误
【发布时间】:2017-07-29 20:29:32
【问题描述】:

我目前正在使用 Vue.js 作为前端框架来管理一个单页应用程序。它的所有源代码都由 webpack 通过开发和生产环境捆绑。

最近我将 webpack 模块的版本从“2.1.0-beta.25”更新为“2.2.0”。这在我的开发机器(OS X Sierra)上运行良好,但是在内置服务器(CentOS 7)时,在 webpack 构建过程结束时出现错误,例如以下 sn-ps。

ERROR in ./src/js/store/Store.js
Module not found: Error: Can't resolve 'js/Defines.js' in '/path/to/project/src/js/store'
 @ ./src/js/store/Store.js 1:0-37
 @ ./src/client.js

具体来说,Defines.js 位于src/js,这个路径通过 webpack configs 设置为别名,如:

// webpack.config.js
const path = require('path')

module.exports = {
  ...
  resolve: {
    alias: path.resolve(__dirname, './src/js')
  },
  ...
}

在源代码中,我将此模块导入为import Defines from 'js/Defines.js'。

这个错误对我来说很奇怪,因为它在以前版本的 webpack 中从未发生过,而且我真的不认为 resolve.alias 设置旨在以特定于操作系统的方式应用。此外,从文档中也没有发现类似的问题。

如果有人解决了这类问题,请告诉我。谢谢。

【问题讨论】:

    标签: webpack centos vue.js alias resolve


    【解决方案1】:

    自己解决了。

    对于最终遇到相同路径的任何人,它与 webpack 或任何其他库无关。

    我的Defines 模块的文件名是src/js/defines.js,以小写d 开头,而导入为'src/js/Defines.js 和大写D。也许我错误地更改了文件名。在 OS X 中运行良好,但在 CentOS 7 中出错。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-01-14
      • 2017-11-23
      • 2019-05-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-04-07
      相关资源
      最近更新 更多