I'm getting the error
error TS4025: Exported variable 'UserApiClientModule' has or is using private name 'UserApiClient'.
in the following code:
export var UserApiClientModule = {
fromConfiguration: (configuration: Configuration) => {
@NgModule({
providers: [
{
provide: BASE_PATH,
useValue: basePath
},
{
provide: Configuration,
useValue: configuration
},
RegistrationApi,
AuthApi,
AccountApi,
ContactsApi,
ContactOrgsApi
],
imports: [
CommonModule,
HttpModule
]
})
class UserApiClient { }
return UserApiClient;
}
}
I suspect the solution is to export the type UserApiClient somehow but I'm not sure how to do this since it's declared in a function.
The point here is:
Typescript tries to guess what is the returned type of all the public parts. And not only guess, but to really declare the
UserApiClient
as a part of returned type of thefromConfiguration
call
And because we return something, which is not exported, is internal.. there is a problem. But we can easily return something else, e.g. some common interface ... or at least magical any
// change this
export var UserApiClientModule = {
fromConfiguration: (configuration: Configuration) => {
@NgModule({
...
// to that
export var UserApiClientModule = { // below is the change
fromConfiguration: (configuration: Configuration) : any => {
@NgModule({
...
I would prefer to declare some common interface IHaveDynamicData
... as in fact in similar case shown here How can I use/create dynamic template to compile dynamic Component with Angular 2.0?
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With