项目配置项服务

项目配置项,包含应用App、布局Layout、用户信息User三种数据类型,并且存储持久化在 localStorage(参考#1737来切换成 sessionStorage)。

建议: 在 Angular 启动服务(startup.service.ts)从远程获取到应用、用户数据后,调用 setApp()setUser() 方法。

API

SettingsService

名称类型返回值描述
layoutpropertyLayout布局信息
apppropertyApp项目信息
userpropertyUser用户信息
notifypropertyObservable<SettingsNotify>当布局、项目、用户信息变更时通知
setLayout(name: string, value: any)methodboolean设置布局属性值
setApp(value: App)methodboolean设置项目信息
setUser(value: User)methodboolean设置用户信息

App

参数说明类型默认值
[name]应用名称string-
[description]应用描述string-

User

参数说明类型默认值
[name]当前用户名称string-
[avatar]当前用户头像string-
[email]当前用户邮箱string-

Layout

参数说明类型默认值
[collapsed]是否折叠菜单boolean-
[lang]当前语言string-
[colorWeak]色弱模式booleanfalse

常见问题

如何更改本地存储键名?

允许通过 global-config.module.ts 全局配置文件,增加 ALAIN_SETTING_KEYS 的配置,例如:

 const alainProvides = [
  { provide: ALAIN_CONFIG, useValue: alainConfig },
+ {
+   provide: ALAIN_SETTING_KEYS,
+   useValue: {
+     layout: 'new-layout',
+     user: 'new-user',
+     app: 'new-app',
+   },
+ },
];