你如何使用babel模块别名获得流量?

时间:2016-12-12 00:17:23

标签: babel flowtype

我正试图让流程键入检查我的代码,但是当它无法找到使用babel-plugin-module-alias重写的路径时,它会给我一个错误。

我尝试在flowconfig中使用resolve_dirname选项失败了。

有人可以告诉我是否可以将这个babel插件用于流程?

.babelrc

{
  "plugins": [
    "transform-flow-strip-types",
    ["module-alias", [
      { "src": "./app", "expose": "app" },
    ]]
  ]
}

.flowconfig

[options]
module.system.node.resolve_dirname=app

应用程序/ main.js

import bar from 'app/foo';

应用程序/ main.js:3

  3: import bar from 'app/foo';
                     ^^^^^^^^^^ app/foo. Required module not found

2 个答案:

答案 0 :(得分:2)

module.system.node.resolve_dirname实际上告诉Flow从哪里开始解析事物。如果您希望Flow从' app'开始解析,则需要将其指向一个高于app的目录。

或者,您也可以使用`module.name_mapper =' ^ app /([a-z-A-Z0-9 $ _ /] +)$' - > ' SRC / \ 1'

答案 1 :(得分:2)

以下是module.name_mapper.flowconfig [options]设置的实现方式。适用于流版本0.56.0

module.name_mapper='^app/\([-a-zA-Z0-9$_/]+\)$' -> '<PROJECT_ROOT>/src/\1'