DingTalk「开发者说」— 钉钉应用开发前端工具实践

简介: DingTalk「开发者说」是钉钉开发者最新上线的开发者栏目,联合阿里云ACE团队,分享钉应用开发解决方案、技术更新、实战技巧,致力于成为钉钉与开发者的桥梁与纽带,让更多的钉钉开发者传播技术、提升技能、分享观点。在数字化变革的时代,“云钉一体”“钉钉全面开放”战略之后,希望钉钉技术可以持续激发开发者的创造力,为组织数字化赋能。本篇将主要介绍钉钉最新推出的前端应用开发工具DingStudio,及其特点、能力和使用案例,帮助钉钉应用开发提效。

演讲者-个人介绍- 许涛.png

分享人:呼荣,钉钉前端开放能力建设负责人
一键回看视频地址一键回看

目录

一、背景
二、什么是DingStudio?
三、DingStudio插件能力
四、DingStudio资源托管
五、Q&A

一、背景

钉钉的前端研发工具主要有三类:

  • DingTalk Design CLI
    前端应用研发命令行工具,提供模板初始化、研发、构建等能力;
  • 微应用调试工具
    web模拟钉钉容器调试能力;
  • 其他外部工具
    提供网络代理、接口mock等辅助功能;

存在问题
目前钉钉的前端研发工具功能比较分散,不同功能的实现需要依赖不同的工具,不利于研发效率的提升。
DingStudio应运而生。

二、什么是DingStudio?

DingStudio是一款辅助应用开发的桌面端应用程序,旨在提高前端开发效率,通过提供各种小工具以及集成钉钉微应用研发、调试等能力,让web开发调试更简单。

  • DingStudio优势

    • 开箱即用
      DingStudio是一个跨平台的桌面端应用,安装即可使用,无额外依赖;
    • 所见即所得
      可视化操作界面,上手简单,研发调试功能一键即用;
    • 持续封装
      方便更新和维护,作为重点开放门户持续输出最佳实践;
  • DingStudio功能

    • 研发支撑
      通过模板初始化项目、本地项目管理、存量项目导入、项目运行、构建与产物管理等;
    • 调试增强
      资源代理本地化调试、容器模拟调试、调试插件注入、真机预览调试等。
  • DingStudio下载

DingStudio 1.0.0版本于2022年3月正式发布,支持Windows和Mac版本,在DingStudio官网可以获得DingStudio下载,功能说明和实用案例介绍,帮助开发者快速上手使用。
image.png

三、DingStudio插件能力

  • DingStudio插件整活
    DingStudio插件是一种附加脚本,通过一定的匹配规则,在html的指定位置加载定制脚本,以实现辅助开发 的目的。
    使用插件的优势在于:

    • 不会污染实际代码,避免调试脚本被带上线的隐患;
    • 可以随时打开和关闭,不同的项目灵活选择不同的插件;
    • 便于扩展和共享。
  • 插件使用案例说明

    • 案例1:使用插件做真机调试
      使用插件做真机调试.png
      具体步骤如下:

      1. 首先,在开发者后台获取调试脚本,点击“生成专属测试工具”后,按照步骤初始化真机调试SDK,即可实现在钉钉客户端测试应用;
        初始化真机调试SDK.jpeg
      2. 打开DingStudio插件面板,新建插件,然后填入上一步获取到的外链js和代码;
        获取到的外链js和代码.jpeg
      3. 保存后,访问调试工具页面,然后真机打开要调试的页面,即可开始调试。
    • 案例2:使用插件做api mock
      虽然api mock已经集成入Web模拟器页面,但如果希望通过比如存量页面中运行接口api或js.api等mock能力,也可以通过插件来配置。
      插件来配置.png
      具体步骤如下:

      1. 在Anymock平台配置项目;
      2. DingStudio配置插件,通过Mock SDK提供接口Mock的能力,并初始化Mock SDK;
      3. 打开DingStudio插件面板,新建插件,然后填入上一步获取到的外链js,在注入内容中填入anymock平台对应项目的token,选择是否开启jsapiMock、httpMock等;
      4. anyMock平台配置api映射关系;
      5. 开启插件;

      使用Mock的优势在于,可以模拟不同的运行状态,而无需真正运行相应的场景,以实现合理定位代码边界情况、进行代码自动化测试等等。

四、DingStudio资源托管

  • DingStudio资源托管能力

    • 提供测试和线上两套环境,快速验证;
    • 前端资源急速发布,无配置成本;
    • 免域名申请,支持资源访问的cdn加速。
  • DingStudio资源托管流程
    DingStudio资源托管流程.png
    如图所示,首先为企业新建应用或选择关联企业现有应用,然后创建/选择对应的迭代版本号,测试环境发布和验证,最后进行线上发布,迭代结束。
    具体步骤如下:

    1. 打开DingStudio,选择静态资源发布;
      选择静态资源发布.png
    2. 首次发布需要配置初始化应用信息:如绑定组织、关联应用appid、自定义发布路径等,保存后进行初始化;
      保存后进行初始化.png
      配置项说明:

      • 组织:有钉钉开发权限的组织;
      • 关联应用appid:进入开发者后台找到对应的应用,复制appid;
      • 自定义发布路径:两段式路径,建议第一段对应企业,第二段对应项目,如hurong/hurongApp;
    3. 初始化完成进入应用资源发布页面,点击“预发布资源”;
      预发布资源.png
      选择发布目录并输入迭代对应版本号,并点击确认;
      并点击确认.png
      配置项说明:

      • 发布目录:项目构建后的目录;
      • 发布文件类型:目前支持jss,css,以及常见的图片文件类型,暂不支持视频文件;
      • 迭代对应版本号:推荐使用三段式版本号,如:0.1.0;
    4. 点击发布上线,完成版本发布;
      完成版本发布.png
    5. 访问资源:固定域名/资源路径/版本号/main.js。
  • DingStudio资源托管注意事项

    • 只有对应企业开发者权限才可以操作;
    • 目前支持的资源类型:前端资源(css/jss),普通图片类型;
    • 资源大小限定5M以内,超出大小暂不支持;
    • 测试环境的资源(即预发布资源)不会永久存在,会定期清理,因此不要使用测试环境资源做实际应用,以免出现后期找不到资源的现象。

    目前DingStudio资源托管为免费服务,后续会考虑进行商业化发展。
    以上是DingStudio的介绍,感兴趣的朋友欢迎加入DingStudio答疑交流群一起交流分享。
    答疑群.png

五、Q&A

Q:测试环境是否可以自行删除?
A:不能。目前针对测试环境采取的是定期清理的策略。

Q:DingStudio的整体能力概括来说有哪些?
A:概括来说,DingStudio工具的能力包括:终端网络代理能力,脚本插件扩展能力,研发项目管理能力,使用Web模拟器进行页面调试能力,项目一键运行能力,资源托管能力等,所有这些能力都可以通过DingStudio官网找到对应的使用指南。

Q:DingStudio后续迭代的计划有哪些?
A:DingStudio作为钉钉推出的面向开发者的工具开放门户,后续的迭代会稳步进行。目前的规划是每个月推出一个包含新功能的大版本,同时也会有一些修复的小版本,比如资源托管能力会在4月推出的迭代版本中跟大家见面。大家可以持续关注DingStudio官网和答疑群获取最新的迭代信息。

开发者服务窗.jpg

相关文章
|
2月前
|
缓存 前端开发 JavaScript
优化前端性能:从理论到实践的全面指南
前端性能优化是提升用户体验的关键环节,但这一过程常被技术细节和优化策略所困扰。本文将系统地探讨前端性能优化的理论基础及实践技巧,包括关键性能指标、有效的优化策略、以及常见工具的应用。我们将从最基本的优化方法入手,逐步深入到高级技巧,为开发者提供一套全面的性能提升方案,以实现更快的加载时间、更流畅的用户交互体验。
|
6天前
|
前端开发 JavaScript 开发者
构建工具对比:Webpack与Rollup的前端工程化实践
【10月更文挑战第11天】本文对比了前端构建工具Webpack和Rollup,探讨了它们在模块打包、资源配置、构建速度等方面的异同。通过具体示例,展示了两者的基本配置和使用方法,帮助开发者根据项目需求选择合适的工具。
8 3
|
15天前
|
前端开发 JavaScript 开发者
利用代码分割优化前端性能:高级技巧与实践
【10月更文挑战第2天】在现代Web开发中,代码分割是优化前端性能的关键技术,可显著减少页面加载时间。本文详细探讨了代码分割的基本原理及其实现方法,包括自动与手动分割、预加载与预取、动态导入及按需加载CSS等高级技巧,旨在帮助开发者提升Web应用性能,改善用户体验。
|
1月前
|
缓存 前端开发 JavaScript
优化前端性能:关键策略与实践
随着互联网技术的发展,用户对网页加载速度和交互体验的要求日益提高,前端性能优化成为提升用户体验和网站竞争力的关键。本文探讨了前端性能优化的重要性和七大关键策略,包括压缩资源文件、利用浏览器缓存、减少HTTP请求、异步加载、使用CDN、优化CSS和JavaScript执行及第三方脚本优化,并提供了实践案例,帮助开发者构建更快、更高效的网站。
|
12天前
|
前端开发 JavaScript 开发者
深入解析前端开发中的模块化与组件化实践
【10月更文挑战第5天】深入解析前端开发中的模块化与组件化实践
18 1
|
16天前
|
前端开发 JavaScript API
前端开发趋势与实践:拥抱Web Components
前端开发趋势与实践:拥抱Web Components
28 4
|
16天前
|
前端开发 JavaScript 安全
前端开发趋势与实践:构建现代Web应用的探索
【10月更文挑战第1天】前端开发趋势与实践:构建现代Web应用的探索
24 2
|
18天前
|
存储 前端开发 JavaScript
前端技术深度探索:从基础到现代框架的实践之旅
前端技术深度探索:从基础到现代框架的实践之旅
26 2
|
4天前
|
JavaScript 前端开发 Docker
拿下奇怪的前端报错(二):nvm不可用报错`GLIBC_2.27‘‘GLIBCXX_3.4.20‘not Found?+ 使用docker构建多个前端项目实践
本文介绍了在多版本Node.js环境中使用nvm进行版本管理和遇到的问题,以及通过Docker化构建流程来解决兼容性问题的方法。文中详细描述了构建Docker镜像、启动临时容器复制构建产物的具体步骤,有效解决了不同项目对Node.js版本的不同需求。
|
1月前
|
移动开发 缓存 前端开发
构建高效的前端路由系统:从原理到实践
在现代Web开发中,前端路由系统已成为构建单页面应用(SPA)不可或缺的核心技术之一。不同于传统服务器渲染的多页面应用,SPA通过前端路由技术实现了页面的局部刷新与无缝导航,极大地提升了用户体验。本文将深入剖析前端路由的工作原理,包括Hash模式与History模式的实现差异,并通过实战演示如何在Vue.js框架中构建一个高效、可维护的前端路由系统。我们还将探讨如何优化路由加载性能,确保应用在不同网络环境下的流畅运行。本文不仅适合前端开发者深入了解前端路由的奥秘,也为后端转前端或初学者提供了从零到一的实战指南。