• learning项目总结


    1. Dialog组件:当背景图片是不规则情况,可以把内容写在传递函数中:modalRender={() => ()},而不是在>后面写
    2. 所有的点击按钮都要加上cursor:pointer,会让用户知道在哪儿点击。
    3. 对于需要兼容undefined / is not function的函数,直接可以在()后面加上?.进行访问,即可解决兼容问题。
    const getOpenData = window.openData?.();
    1. 函数形式的代码中有时候有组件形式的代码,调用需要加上this.
    2. 当埋点的时候遇到从别的地方引入的函数,像learning项目里面的handleClickConsult,则可以传递一个变量,
      onClick={() => handleClickConsult("offSiteCustomer")}
      进行判断是哪个地方传过来的,之后再加上不同的埋点信息。
    3. Modal组件的visible属性现在快不支持使用了,可以使用open代替。
      1. export const handleClickConsult = (name) => {
      2. // @ts-ignore
      3. // window.showConsultModal && window.showConsultModal();
      4. // 钉钉预约演示跳转钉钉客服
      5. const trackerData = {
      6. offSiteCustomer: {
      7. actionName: "点击在线客服",
      8. actionGroup: "在线客服",
      9. productName: "学习中心",
      10. },
      11. footer: {
      12. actionName: "点击底部在线咨询",
      13. actionGroup: "在线咨询",
      14. productName: "学习中心",
      15. },
      16. rightFloating: {
      17. actionName: "点击右侧在线咨询",
      18. actionGroup: "在线咨询",
      19. productName: "学习中心",
      20. },
      21. };
      22. //判断name是否在trackerData里面,在的话就使用 ...trackerData[name]里面的
      23. if (trackerData[name]) {
      24. trackerAction({
      25. ...trackerData[name],
      26. actionName: name,
      27. actionGroup: "预约演示",
      28. productName: "OKR学习",
      29. });
      30. }
      31. };
    1. 防抖函数debounce对于高频率点击的函数,要让函数等待一定的时间才完成运行。以此来防止函数多次执行,造成内存泄漏。让debounce函数()内的代码运行完成后,再等待指定的时间之后,才能完成handleSee函数的执行。当在debounce函数()内的运行的过程中或者等待指定的时间期间内,再次调用了debounce函数,则让()里面的代码重新运行之后再等待指定的时间,直到没有其他调用打断函数的执行。

    1. const handleSee = debounce(async (data) => {
    2. try {
    3. setIsPlayerVideo(true);
    4. const res = await seeLearning(data.learningId);
    5. if (res && res.Code === 1) {
    6. setIsRead(true);
    7. setShowNoticePop(false);
    8. }
    9. } catch (error) {
    10. Toast.Error('error', { canClose: false });
    11. }
    12. }, 500);

  • 相关阅读:
    JavaCV + FFmpeg 播放音视频
    力扣:118. 杨辉三角(Python3)
    代码随想录Day29 贪心04 LeetCode T860 柠檬水找零 T406 根据身高重建队列 T452 用最少得箭引爆气球
    嵌入式单片机智能药盒设计(含代码)
    小学生python游戏编程arcade----基本知识5 自动行走的敌人
    Web自动化测试 —— cypress测试框架
    物联网行业案例 - Splashtop 助力成都谷帝科技有限公司远程维护安卓设备
    软件测试进阶篇----Python
    2022年比若依更香的开源项目
    js遍历数组和对象的常用方法
  • 原文地址:https://blog.csdn.net/qq_56918166/article/details/134506012