Comments (3)
Thanks for the detailed description and instructions. I've run into this issue before, and didn't come to an acceptable solution.
ngc
relies on Typescript when compiling modules and components. If you step into the ngc code, you will see it ask typescript to process the entry points. Immediately after, the file paths have been resolved to ui-router-core/lib/*
. It seems that typescript itself doesn't follow the tsnext
/module
fields when using moduleResolution: node
, although I don't believe they claim to.
I added a mapping to your tsconfig-aot.js
which links ui-router-core
to the esm code. The code ngc generates now points into ui-router-core/lib-esm/*
, but rollup is still adding two copies to the bundle.
"compilerOptions": {
"baseUrl": "",
"target": "es5",
"module": "es2015",
"moduleResolution": "node",
"sourceMap": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"lib": ["es2015", "dom"],
"noImplicitAny": true,
"suppressImplicitAnyIndexErrors": true,
"typeRoots": [
"./node_modules/@types",
"./node_modules"
],
"types": [
"node"
],
"paths": {
"ui-router-core": ["node_modules/ui-router-core/lib-esm"]
}
},
Perhaps this information will help get you past your current block. I can't dig into this further today, but let me know what you come up with.
from angular.
@christopherthielen just checked, it seems that the path does not have any affect on the imports. e.g. in src/client/app/home/home.component.ngfactory.ts the import is still import * as import31 from 'ui-router-core/lib/router';. Are the paths working for you?
from angular.
Looking at the module resolution logs (as we have discussed on Gitter) its looks that the build copies stuff to dist/tmp/
. I modified the paths to path resolution to
"paths": {
"ui-router-core": ["../../node_modules/ui-router-core/lib-esm"],
"ui-router-ng2": ["../../node_modules/ui-router-ng2/lib"]
}
and it works. If anyone is using the angular-seed https://github.com/mgechev/angular-seed
you need to add the above to src/client/tsconfig.json
from angular.
Related Issues (20)
- Support Angular 11 HOT 1
- Angular 12 HOT 8
- Future of ui-router? HOT 6
- Error: State 'quizzes' is already defined HOT 2
- uiSref doesn't work unless matching "name". Can't use full path/name. HOT 2
- How to lazy load with chunks HOT 11
- Incompatibility with Angular v13 - removal of `NgModuleFactoryLoader` HOT 1
- Angular 13 Support (libs update) and version policy HOT 13
- [Discussion] Monorepo requirements for ui-router packages HOT 11
- Redirects on local anchor reference HOT 2
- onError not redirecting HOT 1
- Angular v14 support HOT 2
- [bug(?)]: future state declaration's data not passed/merged to/with loaded child state HOT 1
- Angular 15 support HOT 5
- MergeInjector breaks normal Angular DI priority HOT 3
- [question] Lazy loaded module empty after creating
- Breaks when building with Angular 16
- Angular 16 support HOT 9
- Angular 17 support HOT 4
- Incorrect Ui Routing on iOS 17 safari private browsing mode.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from angular.