Как развернуть приложение Angular с локальной библиотекой в Redux
Мы разрабатываем угловую библиотеку, которую публикуем в частном репо. Мы запускаем локальное веб-приложение для тестирования библиотеки в разработке. Мы также публикуем библиотеку.
Когда я создаю приложение, используя ng build
, результат dist
версия не запускается
Моя файловая структура:
./projects/my-library
./src
Мой процесс сборки CI:
npm ci
npm run build // Creates dist/my-library
ng build --base-href '/test' --configuration=test --output-path=./dist/test
Я заканчиваю с dist
каталог:
./dist/my-library
./dist/test
index.html
файл в ./dist/test
является
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>Another App</title>
<base href="/test" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<link rel="icon" type="image/x-icon" href="favicon.ico" />
<link rel="stylesheet" href="styles.2bf96ac9aaebbaa03e0c.css" />
</head>
<body>
<app-root></app-root>
<script type="text/javascript" src="runtime.17ac16aaa641f7087ac1.js"></script>
<script type="text/javascript" src="polyfills.d1c7bf4a2ae7c3435f95.js"></script>
<script type="text/javascript" src="main.08b6c456c92aa092bef8.js"></script>
</body>
</html>
Чтобы убедиться, что это работает, я бегу http-server
протестировать мое приложение:
http-server ./dist/test
Вот моя проблема. Приложение спрашивает меня, не забыл ли я настроить свой магазин? Я не понимаю, потому что это происходит только тогда, когда я запускаю dist
версия приложения.
Вот ошибка:
ERROR Error: Uncaught (in promise): Error: Dispatch failed: did you forget to configure your store? https://github.com/angular-redux/@angular-redux/core/blob/master/README.md#quick-start
Error: Dispatch failed: did you forget to configure your store? https://github.com/angular-redux/@angular-redux/core/blob/master/README.md#quick-start
at Object.e.assert (4.131ee1951f9b1e86a9da.js:1)
at e.n.dispatch (4.131ee1951f9b1e86a9da.js:1)
at new <anonymous> (4.131ee1951f9b1e86a9da.js:1)
at main.08b6c456c92aa092bef8.js:1
at Wd (main.08b6c456c92aa092bef8.js:1)
at main.08b6c456c92aa092bef8.js:1
at new t (main.08b6c456c92aa092bef8.js:1)
at gh (main.08b6c456c92aa092bef8.js:1)
at Object.Ay [as createNgModuleRef] (main.08b6c456c92aa092bef8.js:1)
at e.create (main.08b6c456c92aa092bef8.js:1)
at O (polyfills.d1c7bf4a2ae7c3435f95.js:1)
at O (polyfills.d1c7bf4a2ae7c3435f95.js:1)
at polyfills.d1c7bf4a2ae7c3435f95.js:1
at e.invokeTask (polyfills.d1c7bf4a2ae7c3435f95.js:1)
at Object.onInvokeTask (main.08b6c456c92aa092bef8.js:1)
at e.invokeTask (polyfills.d1c7bf4a2ae7c3435f95.js:1)
at t.runTask (polyfills.d1c7bf4a2ae7c3435f95.js:1)
at v (polyfills.d1c7bf4a2ae7c3435f95.js:1)
Это определенно @angular-redux/store
вызывая эту проблему. Я удалил каталог dist/my-library
и я получаю ту же ошибку. Angular смог собрать приложение с локальной библиотекой, но локальная библиотека перестала работать с хранилищем Redux, которое @angular-redux/store
,