当前位置: 首页 > news >正文

工作记录2

1. 要实现y轴超出部分滚动的效果,可以这样写

<div style="max-height: 384px; overflow-y: auto;">
</div>

2. 当后端接口还没好的时候,可以自己模拟一下接口返回的数据

export const getCommodityDetail = (id) => Promise.resolve({id: '11111',name: 'xiongxinyu',age: 18})

3. 标签可能会只有父级标签,也有可能会有父级标签和子级标签(子级标签可能有一个或多个),因为存在父级标签和子级标签的区别,所以操作上就会有所不同,这一点可以通过接口返回的层级数据来判断,如果record.parentId==0,说明它是父级,那么就让这一行多一个“新增子项”的操作。

<template #action="{ record }"><TableAction :action="getActions(record)" />
</template>
function getActions(record) {let actions = [{label: '编辑',onClick: handleEdit.bind(null,record),}{label: '删除',popConfrim:{title:'是否确认删除',confirm: handleDelete.bind(null, record),}}]if(record.parentId == '0') {actions.unshift({label: '新增子项',onClick: handleAddSub.bind(null,record)})}return actions;
}

4. 展开或折叠树形表格

<a-button @click="expandAll">展开全部</a-button>

<a-button @click="collapseAll">折叠全部</a-button>

setup(){const expandedRowKeys = ref<string>([]);const [registerTable, { expandAll, collapseAll, reload}] = useTable({isTreeTable: true,expandedRowKeys: expandedRowKeys.value,onExpand: (expande, record) => {if(expande){if(!expandedRowKeys.value.includes(record.id)){expandedRowKeys.value.push(record.id);}}else{let index = expandedRowKeys.value.indexOf(record.id);expandedRowKeys.value.splice(index,1);}}})
}

5. 利用微信schema从app跳转到小程序

本来是可以前端自己去生成schemaUrl的,但是生成的链接有时效性,然后最新的那种明文码它好多设备不支持,所以最后决定让后端生成。前端把想要到时候在小程序页面拿到的参数在此时传递给后端,后端返回schemaUrl。

const res = await getwxScheme(channelId,projectId);
Linking.openURL(res)

因为生成这个链接的时候后端是拿了我们传的参数去生成的,所以返回的链接的信息里其实是携带了这些参数的,那么我们在用这个链接跳转到小程序的某个页面的时候,就可以在这个页面拿到这个参数了,就正常在onLoad里面的option拿就行。

onLoad(option){console.log(option.projectId,option.channelId);
}

5. 联系在线客服

首先通过调用接口获取机构在机构端对客服的一些配置,可以选择配置客服的方式(有h5和js客服),选择配置h5客服的话,就必须得填写客服链接,选择配置js客服的话,就必须得填写JS客服代码,如果获取到接口返回的信息表示机构配置的是h5客服,那就直接用window.opend打开当时填的客服链接即可,但如果是js客服的话,就可以调用螳螂客服的一些api来实现了。

const openChatModal = async () => {if(customerSet.customerType == 1){window.open(customerSet.customerLink, "_blank");return;}else{chartCode();}
}const chartCode = () => {if(window.mantis && window.mantis.requestChat) {window.mantis.requestChat();}else {const scriptDom = stringToDom(customerSet.customerCode);document.head.appendChild(scriptDom);// 设置轮询,避免查不到let num = 0;let timerId = setInterval(() => {num++;// 轮询10s没有初始化关闭if(num >20){clearInterval(timerId);}// 获取到requestChatif(window.mantis && window.mantis.requestChat) {window.mantis.requestChat();clearInterval(timerId);}},500);}
}
const stringToDOM = (str:string) => {if(str.includes("script")){var parser = new DOMParser();// 使用DOMParser的parseFromString方法来转换字符串到DOMvar doc = parser.parseFromString(str,"text/html");// 获取转换后的DOM对象var dom: any = doc.body.firstChild || doc.head.firstChild;const script1:any = document.createElement("script");script1.src = dom.src;return script1;}else {const script1:any = document.createElement("script");script1.src = str;return script1;}
}

http://www.lryc.cn/news/383321.html

相关文章:

  • linux挂载硬盘(解决linux不显示硬盘问题)
  • 运输标签扫描仪可简化运输和接收任务
  • Stable Diffusion 3 大模型文生图实践
  • Linux grep技巧 删除含有指定关键词的行,创建新文件
  • ChatMoney还能写剧本杀?
  • 优化系统小工具
  • 调幅信号AM的原理与matlab实现
  • [MySql]两阶段提交
  • 掌握rpc、grpc并探究内在本质
  • 构造,析构,垃圾回收
  • 杂记 | 搭建反向代理防止OpenAI API被封禁(对于此次收到邮件提示7月9日后将被屏蔽的解决参考)
  • 利用ref实现防抖
  • SAP ABAP 之OOALV
  • 构建实用的Flutter文件列表:从简到繁的完美演进
  • spring使用@PostConstruct踩得坑
  • 【Mac】XnViewMP for Mac(图片浏览查看器)及同类型软件介绍
  • win10修改远程桌面端口,Windows 10下修改远程桌面端口及服务器关闭445端口的操作指南
  • 口感探险之旅:勇闯红酒世界,揭秘复杂风味的无尽奥秘
  • 吉时利 Keithley2440 数字源表
  • PPT的精细化优化与提升策略
  • awtk踩坑记录三:移植awtk-mvvm到Awtk Designer项目
  • 07 - matlab m_map地学绘图工具基础函数 - 绘制等高线
  • Kotlin设计模式:享元模式(Flyweight Pattern)
  • java压缩pdf
  • [AIGC] ClickHouse:一款高性能列式数据库管理系统
  • 深度学习21-30
  • google浏览器无法访问大端口的处理方式
  • 微信小程序余额退费
  • 宁波银行票据案例解读,要注入科技赋能票据新形式
  • 博客已迁移