webpack resolve.alias 找不到模块 Cannot find module

项目结构如下:

app
    src
        index.ts
    package.json
    webpack.config.js
    tsconfig.json
common
    utils
        sign.ts

common/utils/sign.ts内容

import md5 from 'md5';

export default (text) => md5(text);

app/src/index.ts 内容

import sign from 'common/utils/sign';

console.log(sign('hello'));

webpack.config.js 配置alias

resolve: {
    alias: {
        common: '../common'
    }
}

当启动app项目的时候报错:

ERROR in [at-loader] ../common/utils/sign:1:1 
    TS2307: Cannot find module 'md5'.

请问下配置的alias不在当前项目下面,node_modules怎么配置。
如果我在common项目里面安装依赖,打包的时候webpack会重复引入common/node_modules中的文件。
这种情况应该怎么处理呢?

阅读 6.7k
2 个回答

md5应该是个第三方库吧,和alias没关系,应该是npm install md5

你目录结构是怎么样的

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进