全局扩展对象
在扩展主入口模块或新开 WebView 窗口中都可以访问全局扩展对象 global.Xext ,全局扩展对象包含了喧喧所有内置的关键模块,主要包括如下内容:
模块 | 说明 |
lang | 语言管理模块 |
app | 喧喧应用核心模块 |
components | 通用 React 组件 |
utils | 通用工具模块 |
platform | 平台相关模块 |
views | 喧喧界面视图 React 组件 |
lang : 语言模块
lang.name
获取当前语言的名称,目前只会返回 zh-cn 。
lang.update(data: object)
更新原来的语言配置。如果要临时更改默认的界面语言配置某些项目,可以在模块的 onAttach 方法内调用此方法来覆盖原始的语言配置。例如如下的代码将会将登录界面上的按钮文本由“登录”更改为“进入喧喧”:
lang.update({ 'login.btn.label': '进入喧喧' });
lang.string(name: string, defaultValue: ?string)
获取语言配置字符串。
- name : 配置名称;
- defaultValue : 可选,如果配置没有定义则返回此文本。
例如如下代码将获取登录按钮上的文本:
const loginBtnLabel = lang.string('login.btn.label');
lang.format(name: string, ...args: ?[string])
获取从语言配置字符串格式化后的字符串。
- name : 配置名称;
- args : 用于格式化的参数。
// fileSaveSuccessMsg 的值将为:"文件已保存至 c:/1.txt" const fileSaveSuccessMsg = lang.format('file.fileSavedAt.format', 'c:/1.txt');
app : 喧喧应用核心模块
app 模块为一个对象,包含了喧喧应用核心功能子模块。
子模块名称 | 说明 |
---|---|
profile | 管理当前登录的用户。 |
members | 管理当前登录的用户拥有的联系人。 |
db | 当前登录的用户使用的数据库。 |
server | 网络服务处理和接口。 |
models | 数据模型类。 |
events | 事件消息管理对象。 |
ui | 界面交互管理对象。 |
notice | 消息通知管理对象。 |
user | 当前登录的用户对象。 |
im | 即时消息管理对象。 |
components :通用 React 组件
包含了 /app/components 目录下所有通用的 React 组件类。这些组件可以用于开发内嵌界面的应用扩展。
utils :通用的工具类和函数
包含了 /app/utils 目录下所有通用的工具类和函数。
platform :平台 API
目前包含了 Electron 上可用的接口,可以用于检查窗口状态或操作窗口行为。
views :喧喧主窗口界面 React 组件
包含了 /app/views 目录下所有主窗口界面上用到的所有 React 组件。