fex-team / fis3-hook-node_modules

fis3 node_modules 支持
81 stars 12 forks source link

与原定的目录结构不兼容 #19

Closed chenwery closed 8 years ago

chenwery commented 8 years ago

我的目录结构一部分内容如下:

image

通过一下配置,实现一些require简写,


// modules/m/m.js => require('m')
fis.match(/^\/modules\/([^\/]+)\/\1\.jsx?$/, {
    id: '$1'
});

// pages/m/m.js => require('pages/m')
fis.match(/^\/pages\/([^\/]+)\/\1\.jsx?$/, {
    id: 'pages/$1'
});

使用了这个插件之后这些配置就没用了,会报这样的错:

[ERROR] Cannot find module...

必须使用下面的方式引用

require('/modules/m')
require('/pages/m')

比较不合理,有办法解决吗?

chenwery commented 8 years ago

还有,在项目本身自定义了一些hook来自定义require方式之后,会遇到同样的问题。例如https://github.com/imweb/fis3-hook-lego 会失效

2betop commented 8 years ago

require 的简写,请试试 https://github.com/fex-team/fis3-hook-commonjs 这里面的 paths 和 packages 的配置,这个应该能用。

chenwery commented 8 years ago

@2betop 和这个是同一个问题https://github.com/fex-team/fis3-hook-node_modules/issues/6 ,把resolve里的error捕获并避免fis编译终止可以解决问题