0.0.1 • Published 4 years ago
@steveylin/configure v0.0.1
Table of contents
Usage
Install package
npm i @steveylin/configure --save
Add into module to preload configure file
For example
File: app.module.ts
...
import { ConfigureModule, ConfigureLoader } from '@steveylin/configure';
/**
* Confiure Load Factory
*
* @param confiureLoader Confiure files loader service
* @return Loading done promise
*/
export function ConfigFactory(configureLoader: ConfigureLoader) {
return () => {
return configureLoader.load({
key: 'datasources',
path: './../assets/configs/datasources.json'
});
}
}
/**
* Main App Module
*/
@NgModule({
declarations: [AppComponent],
imports: [
BrowserModule,
// Use 'forRoot' to preload configure file you want
ConfigureModule.forRoot(
{
key: 'datasources',
path: './../assets/configs/datasources.json'
}
),
HttpClientModule
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule {}
File: app.component.ts
...
import { ConfigureLoader } from '@steveylin-libs/configure';
/**
* Main App Component
*/
@Component({
selector: 'steveylin-libs-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.less']
})
export class AppComponent implements OnInit {
/**
* @param configureLoader Configure load files service
*/
constructor(private configureLoader: ConfigureLoader) {}
/**
* Initilailize component
*
* @method public
*/
public ngOnInit(): void {
const config = this.configureLoader.get<AppConfig>('datasources');
console.log(config.mqtt);
}
}
Preview
Status
Copyright and license
Code and documentation copyright 2020 Steve Y Lin.
0.0.1
4 years ago