модуль опубликованного узла не может использовать псевдонимы - PullRequest
0 голосов
/ 08 октября 2018

У меня есть приложение, созданное с помощью create-Reaction-app, и оно использует response-app-rewired / Reaction-scripts-ts.Мой tsconfig имеет:

baseUrl: "src",
paths: {
    "src/*": "./*"
}

В различных файлах в этом приложении пути разрешаются очень хорошо:

import { MyComponent } from "src/components/MyComponent";

Это приложение было опубликовано, а затем импортировано в другое приложение, пакет которого.json имеет:

"my-custom-app": "^0.1.0"

Однако родительское приложение разрывается и говорит, что не может найти «src / components / MyComponent» в дочернем приложении.Если я заставлю дочернее приложение использовать относительные пути вместо этого.все работает нормально.

Неправильная ли конфигурация или абсолютные пути не разрешены при создании модулей npm?

Существует аналогичная проблема с локальной разработкой, когда кажется, что она неправильно загружает sass,У моего дочернего приложения есть config-overrides.js:

const rewireSass = require("react-app-rewire-scss");
module.exports = function override(config, env) {
    config = rewireSass(config, env);
    ...
}

Если я скопирую это в родительское приложение, оно загрузит sass.Я хочу, чтобы приложения были независимыми, но похоже, что конфигурации в дочернем приложении не загружаются должным образом.

1 Ответ

0 голосов
/ 09 октября 2018

Ваш baseUrl уже src , а пути относительно src .Поэтому вам нужно перейти в папку, в противном случае вы указываете на src / src :

"baseUrl": "src",
"paths": {
  "src/*": [ "../*" ],
},
...