正则改造VS Code里React类组件的自定义snippet

本文介绍了如何使用正则表达式改造VS Code的React类组件snippet,使其能根据当前文件名自动生成类名。通过参考教程并解决路径与文件名匹配的问题,实现了针对单文件和文件夹组件的智能类名生成。尽管类名可有可无,但作者借此机会复习了正则表达式,并分享了实现过程。
摘要由CSDN通过智能技术生成

我目前都习惯用 JS JSX Snippets 这个 VS Code 插件来快速编写 React 组件,然后发现快速生成类组件的 rcc 其中的类名可以跟着当前文件名自动变化,于是就研究了一下。

最后找到这篇非常棒的教程 https://blog.csdn.net/maokelong95/article/details/54379046 ,讲解得非常清楚。

但是,还有点细节让我的强迫症不爽:有些组件直接用一个JS文件,如 App.js ,这样里面使用 rcc 能自动生成 App 这个类名,但是,还有很多组件是用一个文件夹的,因为它的样式、以及一些子组件要放一起,如 \News\index.js ,这时使用 rcc 就只能生成 index 这个不合适的类名了,但显然我想要的是 News 做类名。

看到 snippets 变量转换的语法里,可以使用正则提取,并进一步格式化,那正好我复习一下正则,开搞。

期间各种心酸苦楚就不赘述了。就是发现只有占位符可以嵌套,可选项不能嵌套,变量转换的 if else 输出语法也不能嵌套,哎。。。最后思路改为,分别对 文件名 和 路径 进行正则匹配和提取,如果是 大写开头的 就提取成功,否则就只输出空格。所以代码风格很重要,组件就该用 Pascal 命名法。

<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值