当前位置:   article > 正文

使用React Buddy辅助React开发

使用React Buddy辅助React开发

https://plugins.jetbrains.com/plugin/17467-react-buddy

https://react-buddy.com/

安装插件

c475c62b6244fd23be9886384ae687f6.png
安装

大纲

大纲是包含React组件的文件的紧凑表示。打开组件文件,然后按当前编辑器右上角的树图标。

43e44b8ef3a9a16f7253936b8e5f007e.png

树图标

4de1a6742dc515b21777742a46510f40.png

大纲

大纲面板允许进行下列操作

  • 点击跳转到指定的元素

  • 拖拽排序元素节点

  • 右键操作元素

e62827b54f13d2ee18b11eb3b541938c.png

操作元素

使用「生成处理程序」可以快速编写操作函数,例如onClick

64990a191916d8ddd9d2dfa5079b8780.png

生成处理程序
  1. import React, { useCallback } from 'react';
  2. const MyComponent = (props) => {
  3.   const onDivClick = useCallback((event) => {}, []);
  4.   return (
  5.     <>
  6.       <div onClick={onDivClick}></div>
  7.     </>
  8.   );
  9. };
  10. export default MyComponent;

预览&调色板

设置

55fb40c502fed18dc2bd3b16bf859fdb.png

设置

c97393632b0ebb1f71b8d6aac17d3d20.png

工具箱配置

根据项目的组件添加调色板

由于我的项目中使用的是antd,所以我取消勾选mui

调色板

打开调色板后就可以看到antd中的组件了

e78b8ab223848217eba5ff4245ebebbe.png
image-20240219161614169

如果出现下面的错误,是因为配置了ESlint规则,需要在/src/dev中的palette.jsx和previews.jsx文件头部添加

import React from 'react';
53d51c2f92950c04fcaa4b8019430f64.png
预览报错

再次查看后就可以看到

45f2c3365ba2b536bfcb14e31b845eaa.png
预览

结合刚才的「大纲」就可以直接拖拽调色板中的组件到当前文件中

例如拖拽Form组件后,会自动向当前文件中插入该组件的文件,例如:

  1. import React, { useCallback } from 'react';
  2. import Button from 'antd/es/button';
  3. import { useForm } from 'antd/es/form/Form';
  4. import { Form } from 'antd';
  5. const MyComponent = (props) => {
  6.   const onButtonClick = useCallback((event) => {}, []);
  7.   const [form] = useForm();
  8.   const onFormFinish = (values: any) => {
  9.     // todo handle form finish
  10.   };
  11.   const onFormFinishFailed = (errorInfo: any) => {
  12.     // todo handle form finish fail
  13.   };
  14.   const onFormClearClick = () => {
  15.     form.resetFields();
  16.   };
  17.   return (
  18.     <>
  19.       <Button danger onClick={onButtonClick}>
  20.         测试
  21.       </Button>
  22.       <Form
  23.         form={form}
  24.         name="basic"
  25.         labelCol={{ span: 8 }}
  26.         wrapperCol={{ span: 16 }}
  27.         layout="horizontal"
  28.         initialValues={{ remember: true }}
  29.         onFinish={onFormFinish}
  30.         onFinishFailed={onFormFinishFailed}
  31.       >
  32.         <Form.Item wrapperCol={{ offset: 8, span: 16 }}>
  33.           <Button type="primary" htmlType="submit">
  34.             Submit
  35.           </Button>
  36.           <Button htmlType="button" onClick={onFormClearClick}>
  37.             Clear
  38.           </Button>
  39.         </Form.Item>
  40.       </Form>
  41.     </>
  42.   );
  43. };
  44. export default MyComponent;

预览

b6d273e8a9c4256757f34be6d07930ce.png

预览当前组件
8301dac791059675634566872c42848d.png
预览
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/124265?site
推荐阅读
相关标签
  

闽ICP备14008679号