Lerna和webpack别名问题

时间:2017-05-03 15:49:08

标签: webpack lerna

想象一下两个项目(例如my-app和my-ui)使用webpack别名来解析组件' as' ./ src / components'。我在当地使用Lerna" link"这个项目和简化开发,my-ui是my-app的依赖项(设置在它的package.json中)并导入如下:

MyApp的

/src/main.js:

import UI from 'my-ui';

MyUI

/src/main.js

import Button from 'components/button';
export default Button;

/src/components/button/main.js

export default class Button...

当MyApp启动时,MyUI尝试在" MyApp / src / components / "中解析Button。而不是" MyApp / node_modules / my-ui / src / components "或" MyApp / node_modules / my-ui / lib / app.js "。我找不到如何解决这个问题!

我的Webpack配置中的解析部分:

resolve: {
  mainFiles: ['index', 'main'],
  extensions: ['.js', '.jsx'],
  alias: {
    lib: helpers.getPath('src/lib/'),
    components: helpers.getPath('src/components/'),
  },
  modules: [
    helpers.getPath('src'),
    helpers.getPath('node_modules'),
  ],
},

getPath方法的位置为:

const path = require('path');
const projectPath = path.resolve(__dirname, '..');
const getPath = path.join.bind(path, projectPath);

0 个答案:

没有答案