|
@@ -1,92 +0,0 @@
|
|
|
-Data
|
|
|
- # 联系人数据
|
|
|
- contact:{
|
|
|
- // 联系人唯一ID
|
|
|
- id: "1",
|
|
|
- // 名字
|
|
|
- displayName: "范佳奕",
|
|
|
- // 头像
|
|
|
- avatar:
|
|
|
- "https://ss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=4259300811,497831842&fm=26&gp=0.jpg",
|
|
|
- // 类型 single | many
|
|
|
- type: "single",
|
|
|
- // 联系人索引, 默认按照 localeCompare 排序, 指定顺序 '[1]群组'
|
|
|
- index: "B",
|
|
|
- // 最近一条消息
|
|
|
- message: {
|
|
|
- // 未读数量 , true 显示红点
|
|
|
- unread: 0,
|
|
|
- // 发送时间
|
|
|
- sendTime: 1,
|
|
|
- // 内容
|
|
|
- content: "2",
|
|
|
- // 类型 voice | file | video | image | text
|
|
|
- type: "image"
|
|
|
- }
|
|
|
- }
|
|
|
- # 消息数据
|
|
|
- message:{
|
|
|
- // 消息唯一ID
|
|
|
- id: "123",
|
|
|
- // 消息状态 going | succeed | failed
|
|
|
- status: "succeed",
|
|
|
- // 消息类型 voice | file | video | image | text
|
|
|
- type: "image",
|
|
|
- // 发送时间
|
|
|
- sendTime: 12312312312,
|
|
|
- // 消息内容 | 消息链接
|
|
|
- content: "asdas",
|
|
|
- // 接收方 ID 单人聊天(联系人ID) | 多人聊天(群ID)
|
|
|
- toContactId: "123",
|
|
|
- // type = file 文件大小
|
|
|
- fileSize: 1231,
|
|
|
- // type = file 文件名称
|
|
|
- fileName: 'asdasd.doc'
|
|
|
- // 发送消息的联系人
|
|
|
- fromUser: { id: "123", displayName: "123", avatar: "123", type: "single" }
|
|
|
- }
|
|
|
- # 左侧按钮配置
|
|
|
- menu:[{
|
|
|
- # 指定 menu 唯一名称,保留字段 contacts(通讯录) lastMessages(最近消息)
|
|
|
- name: "123",
|
|
|
- # 鼠标停留显示文字
|
|
|
- title: "通讯录",
|
|
|
- # 标记未读数, 数字显示具体值, true 显示红点
|
|
|
- unread: 0,
|
|
|
- # 按钮的DOM元素
|
|
|
- render: menu => {
|
|
|
- return <span>T</span>;
|
|
|
- },
|
|
|
- # 点击按钮打开的页面,如果 name 为保留字段,该属性失效
|
|
|
- renderContainer: () => {
|
|
|
- return <lemon-contact contact={this.lastMessages[0]} />;
|
|
|
- },
|
|
|
- # 按钮点击事件,会阻止默认的行为,调用 next() 进入下一步
|
|
|
- click: next => {
|
|
|
- next();
|
|
|
- },
|
|
|
- # 是否为底部按钮
|
|
|
- isBottom: false
|
|
|
- }]
|
|
|
- emoji:[{
|
|
|
- label: "表情",
|
|
|
- children: [
|
|
|
- {
|
|
|
- name: "1f600",
|
|
|
- title: "微笑",
|
|
|
- src: "https://twemoji.maxcdn.com/2/72x72/1f600.png"
|
|
|
- },
|
|
|
- ]
|
|
|
- }]
|
|
|
-
|
|
|
-Methods
|
|
|
- # 初始化左侧 menu 数据
|
|
|
- initMenus(data:[menu])
|
|
|
- # 初始化联系人数据
|
|
|
- initContacts(data:[contact])
|
|
|
- # 修改联系人数据
|
|
|
- updateContact(contactId:联系人ID,data:联系人数据,会与现有的数据合并)
|
|
|
- # 切换 menu
|
|
|
- changeMenu(menuName)
|
|
|
- # 打开一个聊天窗口 传入 contactId 或 contact(如果当前不存在这个联系人,根据此数据新建一个)
|
|
|
- openMessage(contactId | contact)
|