Antd中代码示例是怎么在CodeSandBox中打开的

简介: 使用过Antd的小伙伴应该很熟悉,Antd组件文档有在CodeSandBox和CodePen中打开直接预览和编辑的功能,这么炫酷且实用的功能具体是怎么实现的?


image.png

使用过Antd的小伙伴应该很熟悉,Antd组件文档有在CodeSandBox和CodePen中打开直接预览和编辑的功能,这么炫酷且实用的功能具体是怎么实现的?

codesandbox.io[1] 是一个前端代码的在线编辑器,支持各种不同的框架,可以随时预览代码的运行结果。

创建沙盒

“在CodeSandBox中打开”是CodeSandbox提供的功能,让我们可以通过直接调用API来创建CodeSandbox沙盒。

CodeSandbox提供了几种导入到沙盒中预览的方式:

npm install -g codesandbox

codesandbox ./


  • 通过调用API方式创建沙箱[2]:
    CodeSandbox提供了通过API让我们可以通过编程的方式来创建sandbox。我们可以在文档里通过示例代码来创建sandbox,方便用户编辑和查看。
    通过Get和Post请求调用https://codesandbox.io/api/v1/sandboxes/define,即可实现创建CodeSandbox沙箱。
    Get调用Demo[3]   Post调用Demo[4]

Important:CodeSandBox官方Demo[5]

Antd中示例代码跳转CodeSandbox、CodePen等:模板示例[6]

嵌入SandBox[7]

CodeSandBox还支持直接嵌入:在文档,博客和其他网站中嵌入沙箱,可以展示代码和预览效果:

以官方Demo[8]为例:

  • 点击Share,这里选择Embed

  • 自定义展示内容和主题,复制嵌入代码就可以了,是通过iframe标签来嵌套页面。

类似CodeSandBox的在线编辑器有很多,比如:CodePen[9]、StackBlitz[10]、JSFiddle[11]、JSBin[12]、JSRun[13]等。

微软和GitHub也都推出了自己的在线代码编辑器(和上面几个不同,只提供了代码编辑功能,无法实时预览):

其他相关:

Code-Server[14]

这里推荐一个可以自定义部署的在线代码编辑器:Code-Server。实际上就是VSCode的在线版本,支持安装VSCode插件,内嵌Terminal中会直接在服务器端运行,非常强大。


Sandpack[15]

Sandpack 是 CodeSandbox 的浏览器打包器。


参考资料

[1]codesandbox.io: https://codesandbox.io/

[2]通过调用API方式创建沙箱: https://codesandbox.io/docs/importing#define-api

[3]Get调用Demo: https://codesandbox.io/s/6yznjvl7nw

[4]Post调用Demo: https://codesandbox.io/s/qzlp7nw34q

[5]CodeSandBox官方Demo: https://codesandbox.io/examples/package/codesandbox

[6]模板示例: https://hub.fastgit.org/ant-design/ant-design/blob/master/site/theme/template/Content/Demo/index.jsx

[7]嵌入SandBox: https://codesandbox.io/docs/embedding#embed-options

[8]官方Demo: https://codesandbox.io/s/react-new?from-embed=&file=/src/App.js

[9]CodePen: https://codepen.io/

[10]StackBlitz: https://stackblitz.com/

[11]JSFiddle: https://jsfiddle.net/

[12]JSBin: https://jsbin.com/

[13]JSRun: http://jsrun.net/

[14]Code-Server: https://github.com/cdr/code-server

[15]Sandpack: https://github.com/codesandbox/sandpack

front.png

相关文章
|
前端开发
914.【前端】Taro集成towxml渲染markdown文档
914.【前端】Taro集成towxml渲染markdown文档
1335 2
|
前端开发 容器 API
基于 three.js 的 3D 粒子动效实现
作者:个推web前端开发工程师 梁神 一、背景 粒子特效是为模拟现实中的水、火、雾、气等效果由各种三维软件开发的制作模块,原理是将无数的单个粒子组合使其呈现出固定形态,借由控制器、脚本来控制其整体或单个的运动,模拟出现真实的效果。
3656 0
vscode中使用/deep/报错解决方案
vscode中使用/deep/报错解决方案
948 0
Visual Studio Code开发常用的工具栏选项,查看源码技巧以及【vscode常用的快捷键】
Visual Studio Code开发常用的工具栏选项,查看源码技巧以及【vscode常用的快捷键】
1538 0
|
数据库 JavaScript SQL
❤Nodejs 第八章(操作本地数据库优化查询为分页查询方式)
【4月更文挑战第8天】在Node.js中,本章讲述了如何优化本地数据库查询以实现分页。首先,添加了前端分页参数`pageNum`(页码)和`pageSize`(每页条数)。接着,通过打印`req.query`来验证参数是否正确传递。初始查询示例为`SELECT * FROM user WHERE age = 18 LIMIT 0, 10`。当改变分页参数时,查询能相应更新。在实现动态偏移量`offset`时,起初因误添加`' AND' : ' WHERE'`导致错误,修正后使用`LIMIT`和计算出的`offset`进行分页。
384 5
❤Nodejs 第八章(操作本地数据库优化查询为分页查询方式)
|
设计模式 Java 测试技术
【Selenium使用误区】Iframe元素定位失败:避免误提GitHub Issue的技巧
本文分享了作者在使用Selenium进行UI自动化测试时遇到的一个常见问题:在模拟登录163邮箱的过程中,元素定位失败,原因是没有正确地定位到iframe内的元素。文章通过分析问题原因、提供解决方案和附录代码,指导读者如何避免类似的错误,并强调了在UI自动化测试中准确定位页面元素的重要性。
370 1
|
缓存 JavaScript 前端开发
|
存储 SQL 数据管理
TRUNCATE语句到底因何而慢?
综上所述,尽管 `TRUNCATE` 通常被视为快速的数据删除方法,但在处理特定的数据库配置、大型数据集、复杂的外键关系等方面,可能会意外地缓慢。因此,优化数据库性能和理解 `TRUNCATE` 在特定情况下的行为,对数据库管理员和开发人员来说是重要的。在进行此类操作之前,建议先测试并理解它们在您的特定环境中的表现,以便制定最有效的数据管理策略。
898 1
|
算法 Java Android开发
安卓逆向 -- 实现SO层签名验证
安卓逆向 -- 实现SO层签名验证
667 49
|
缓存 Java Android开发
Android 9.0 WiFi 扫描结果上报和获取流程
Android 9.0 WiFi 扫描结果上报和获取流程
735 0

热门文章

最新文章