甚至可以制作一个类似面板的 React 组件来显示带有行号和折叠功能的源代码吗?

Is it even possible to make a panel-like React component showing source code with line number and collapsing function?

我正在开发的网站有一个可折叠的源代码查看面板。 而且我不知道如何实现一个 React 组件来做完全相同的事情,我真的很抱歉我只能提供一个我想要的例子。

this site 上有一个代码查看面板,我想要与此站点上的完全相同的面板。

https://ftmscan.com/address/0xce761d788df608bd21bdd59d6f4b54b2e27f25bb#contracts

solidity源代码查看面板上有折叠功能,不知道怎么实现。

是否有任何模块可以解析 solidity 代码,或者我是否必须创建一个新的逻辑来解析代码?

总结我的问题;

  1. 制作一个可以查看源代码的 React 组件。
  2. 如何给该组件添加折叠功能?

另外,我目前使用的是material-ui 4.12.3,React版本是17.0.2

他们似乎在使用 Ace editor

npmjs 上有多个 Ace 编辑器的 React 实现。我建议您研究其中一个。 (然后您还将“免费”在代码编辑器中获得 expand/collapse。)