本机 - 使用package.json中的别名进行绝对导入

时间:2018-03-12 18:15:52

标签: javascript node.js react-native expo es6-modules

我看到了一些使用import '@someDir/something'的项目,它解决了相对导入的恶意。

然后我发现这个blog post正在谈论这个方法。它基本上告诉您在目录中创建package.json并指定其别名。

我在我的react-native项目中实现了它,该项目基于expo,并且运行良好。

这样的事情:

{"name": "@someDir"}

src/someDir/package.json内。

我可以随处import '@someDir/something'

为什么会这样?背后的魔力在哪里? Webpack或babel或本身的反应?

我看到an issue讨论了这个功能,但我不知道它在哪里实现。

我的.babelrc

{
  "presets": ["babel-preset-expo"],
    "env": {
        "development": {
              "plugins": ["transform-react-jsx-source"]
      }
    }
}

它深入了解了巴贝尔的家属,却找不到任何相关的东西。

1 个答案:

答案 0 :(得分:2)

它似乎是metro的一部分,是反应原生的javascript捆绑器。

https://www.belighted.com/blog/react-and-react-native-directories-management

https://facebook.github.io/metro