Ivy fails with NGXS
See original GitHub issueπ bug report
Is this a regression?
Yes, it is
Description
NGXS works with Angular 8, but build fails when enableIvy
is true
π¬ Minimal Reproduction
https://github.com/arturovt/ivy-ngxs-repro
- create new app with
--enable-ivy
- install
@ngxs/store
- import the
NgxsModule
- build with
--prod
flag
π₯ Exception or Error
chunk {0} runtime-es5.465c2333d355155ec5f3.js (runtime) 1.41 kB [entry] [rendered]
chunk {1} main-es5.f306d8f70fdeea68d975.js (main) 178 kB [initial] [rendered]
chunk {2} polyfills-es5.e0a0858fa7791e140ae9.js (polyfills) 113 kB [initial] [rendered]
Date: 2019-07-23T07:08:02.084Z - Hash: 93ed973fa7b88e080f3b - Time: 17265ms
ERROR in ./src/app/app.module.ts 19:104-121
"export 'NgxsRootModule' (imported as 'i1') was not found in '@ngxs/store'
π Your Environment
Angular Version:
Angular CLI: 9.0.0-next.2
Node: 12.6.0
OS: linux x64
Angular: 9.0.0-next.5
... animations, common, compiler, compiler-cli, core, forms
... language-service, platform-browser, platform-browser-dynamic
... router
Anything else relevant? May be related to the #29939
UPD
Itβs built without errors using CLI 9.0.0-next.2
version. But there is a runtime error after importing NgxsRouterPluginModule
:
Canβt resolve all parameters for RouterState: (?, ?, ?, ?, ?, ?, ?).
Because there is no ngInjectableDef
property on the RouterState
.
Also when running ivy-ngcc
it fails compiling @ngxs/router-plugin as umd
:
Value at position 0 in the NgModule.imports of NgxsRouterPluginModule is not a reference: [object Object]
Issue Analytics
- State:
- Created 4 years ago
- Reactions:12
- Comments:16 (11 by maintainers)
Top Results From Across the Web
[BUG]: Ivy build error Β· Issue #1165 Β· ngxs/store - GitHub
We are currently trying Ivy out in our codebase and for now it seems that ngxs 3.4.X works with Ivy.
Read more >Ivy Migration Guide - NGXS
Migration Overviewββ The Angular team has worked hard to ensure Ivy is as backwards-compatible with the previous rendering engine ("View Engine") as possible.Β ......
Read more >NGXS doesn't work when update to Angular 9 with Ivy enabled
Everything runs fine when I disable the Ivy, but with Ivy enabled the application doesn't finish the serve task correctly: My component:
Read more >@ngxs/storage-plugin | Yarn - Package Manager
extendable storage plugin for @ngxs/store ... NGXS is a state management pattern + library for Angular ... Feature: Build packages in Ivy format...
Read more >error: failed to initialize angular compilation - ngcc failed.
As misha130 suggested in the comments, there was (a single) library not aligned with the latest Ivy changes which was causing the error....
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
@arturovt there was indeed an issue with resolving
store.NgxsModule.forFeature([RouterState])
in both CommonJS and UMD bundles, for which I included a fix in #32619. With those fixes, the compilation no longer fails πJust to add in here, I have just tested this repo with Angular 8.2.0-next.2 and it has the same build failures. In the referenced firebase issue it was suggested that this would be fixed by PR #30591 but this PR seems to have been merged, closed (although there seem to be more subsequent commits on it?) and is part of the Angular 8.2.0-next.2 package. The issue is unfortunately still present in this version.