节点:package.json 中的导出字段不起作用

big*_*ato 5 node.js npm reactjs

我有两个存储库:

\n
    \n
  1. my-ui-lib:作为 package.json 中的依赖项导入的 UI 库
  2. \n
  3. my-app:一个从 my-ui-lib 导入组件的 React 应用程序
  4. \n
\n

我已经捆绑了我的 UI 库,并尝试更新 package.json,以便我可以像这样导入组件:

\n
import Button from "my-ui-lib/components/Button";\n\n
Run Code Online (Sandbox Code Playgroud)\n

代替

\n
import Button from "my-ui-lib/build/components/Button";\n\n
Run Code Online (Sandbox Code Playgroud)\n

在我的my-ui-libpackage.json 中我添加了以下内容:

\n
import Button from "my-ui-lib/components/Button";\n\n
Run Code Online (Sandbox Code Playgroud)\n

当我在 my-app 中打开 node_modules 时,我还确认构建文件夹已按预期嵌套:

\n
  \xe2\x96\xbe my-ui-lib/\n    \xe2\x96\xbe build/\n      \xe2\x96\xb8 components/\n      \xe2\x96\xb8 constants/\n      \xe2\x96\xb8 helpers/\n      \xe2\x96\xb8 hooks/\n      \xe2\x96\xb8 icons/\n
Run Code Online (Sandbox Code Playgroud)\n

但是,我尝试仅从根目录导入按钮,但它抱怨:

\n
\n./src/App.js\nModule not found: Can\'t resolve \'my-ui-lib/components/Button\' in \'/Users/edmund/Documents/src/my-app/src\'\n\n
Run Code Online (Sandbox Code Playgroud)\n

只有当我将其更改为时,import Button from "@twicapp/ui/build/components/Button";我的页面才能正确加载。

\n

我尝试通过以下方式手动更新 package.json 文件:

\n
    \n
  1. 开放my-app/node_modules/my-ui-lib/package.json
  2. \n
  3. 更改导出字段以删除斜杠、句点等。
  4. \n
  5. 刷新我的应用程序服务器
  6. \n
\n

但似乎没有任何作用。我错过了什么吗?

\n

这是我的my-ui-libpackage.json:

\n
import Button from "my-ui-lib/build/components/Button";\n\n
Run Code Online (Sandbox Code Playgroud)\n

big*_*ato 0

我无法让出口工作。这就是我解决这个问题的方法。我必须更改构建+仅发布 dist 文件夹

在此输入图像描述