博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
code-rhythm:写了个vscode扩展,让代码更有快感
阅读量:6677 次
发布时间:2019-06-25

本文共 3527 字,大约阅读时间需要 11 分钟。

安装及使用可能遇到的问题

  • 如遇安装问题,请更新vscode
  • 安装后不能正常使用,如下处理:
    • 尝试重新启动vscode
    • 反馈部分情况下,会存在需要输入字符带下划线后,再删除下划线才能正常显示所有的代码提示,原因暂不确定,文档更新做说明

项目地址

原因

写代码本身是件快乐的事情,但开发中总有各种烦恼。 有时候一个很简单的方法,因为不确定传参的形式,不确定返回形式,不确定具体用法,就得翻墙,搜索,查阅,读些没用的信息后获得用法示例,然后靠着示例去写代码。漫长的周折,仅仅是为了使用一个方法,又没快感。

代码补全不过是一个提示说明,也许作为一个为了提高效率的懒人,需要的是:直接给出demo,即改即用。

snippets + demo的小工具,让写代码更带感。

Bingo,这就是 code-rhythm

安装

打开vscode应用,搜索code-rhythm进行安装.或者快速搜索:

# mac通过 Command + P组合键打开搜索框ext install code-rhythm复制代码

使用

即看即用.

约定以@开头,根据需要来获demo,右侧有代码片段的介绍,方便快速查看。以下动图演示了快速获取js,moment,axios,antd等常用代码demo的方式.

注:目前仅对mac做了测试,window下是否有兼容问题暂未知晓

代码示例介绍

@js

快捷 示例说明
@js_promise promise基本示例
@js_switch switch
@js_array.concat 数组合并
@js_array.every 检测数组中所有元素是否都大于x值
@js_array.forEach 数据遍历
@js_array.includes 数组是否包含某元素
@js_array.filter 数组返回符合指定条件的元素组
@js_array.indexOf 数组指定元素的序列
@js_array.join 转为字符串
@js_class_extends 继承示例
@js_class class基本示例
@js_async async用法
@js_function.apply 改变this,参数数组
@js_function.bind bind用法
@js_function.call call用法,参数依次传入
@js_object.defineProperties 定义属性
@js_object.defineProperty 单一属性
@js_object.freeze 冻结对象不能修改
@js_object.is 判断值是否相同
@js_object.keys 枚举:数组 & 对象
@js_object.values 返回数组:可枚举对象的values
@js_string.charAt 字符串指定索引内容
@js_string.concat 合并字符串
@js_string.endsWith boolen:是否以某字符串结尾
@js_string.includes boolen:是否包含字符
@js_string.match ary:匹配结果
@js_string.padEnd 尾填充
@js_string.padStart 头填充
@js_string.replace 替换
@js_string.slice 截取字符串
@js_string.split 分割成数组
@js_string.substr 返回指定长度字符串
@js_string.substring 索引范围内字符串
@js_string.low&up 大小写
@js_string.trim 去除空格
@js_array.from 类数组转为数组
@js_map 类Object对象
@js_async_all async并发
@js_async_promise_all 混合处理并发
@js_map_foreach map数据遍历
@js_object.hasOwnProperty 对象是否有某属性
@js_string.replace.reg 正则替换
@js_object_string obj转为string

@module

快捷 示例说明
@module_export es6模块导出
@module_import es6模块导入
@module_node_exports_children cmd导出子属性
@module_node_exports cmd导出默认模块

@reg

快捷 示例说明
@reg_email email验证
@reg_mobile 手机
@reg_id 身份证
@reg_chinese 中文
@reg_sentence 中英文及数字
@reg_url url

@axios

快捷 示例说明
@axios_get_base 基本get
@axios_get_params get参数形式
@axios_async es7异步写法
@axios_post_base 基本post
@axios_whole_config 完整配置
@axios_response_list 返回列表

@antd

快捷 示例说明
@antd_table_check 勾选框table
@antd_table_base 基本表格
@antd_table_nest_base 基本嵌套表格
@antd_form_base(login) 基本form表单(login)
@antd_modal_base 基本modal框
@antd_modal_confirm_warn modal基本确认警告框

@react

部分示例需要更新

快捷 示例说明
@react_comp_func func无状态组件
@react_comp_state_redux state组件with redux
@react_entry 入口 store,router,render
@react_comp_constructor base组件
@react_comp_ref 非受控组件ref
@react_comp_cycle 组件生命周期
@react_children 包含子组件写法
@react_proptypes_demo proptype校验
@react_img 插入图片
@react_img_folder 引入图片文件夹

@moment

快捷 示例说明
@moment_date 转为日期
@moment_convert 转为moment
@moment_compare 日期比较

@utils

包含了一些常用的小工具及设计模式

快捷 示例说明
@utils_data_format 日期时间格式化
@utils_countdown_simple 最简单倒计时
@utils_scroll_watch 滚动监听
@utils_scrolltop 返回顶部无动画
@utils_insertScript 动态插入script
@utils_getCookie 获取cookie
@utils_offset 距离document的位置
@utils_pattern_pub/sub 观察订阅模式
@utils_pattern_single 单体模式
@utils_pattern_factory 工厂模式
@utils_pattern_singleton 单例模式
@utils_pattern_adapter 交换头(适配器)模式
@utils_pattern_Decorator 装饰器:扩展现有接口
@utils_pattern_proxy 代理(缓存)模式.用于优化
@utils_pattern_flyweight 合并重复,非一般清爽
@utils_pattern_facade 外套模式,人模狗样
@utils_base64 base64转换
@utils_pattern_chain 链式写法
@utils_json_pretty_tab json美化形式
@utils_add_remove_class 增加删除类
@utils_data_type 判断数据类型

常见问题

Q:不想用了 A:直接卸载扩展,会随同将对应的代码示例删除。 目前测试vscode的禁用插件功能,可能由于异步机制存在问题,不一定能正确执行对应的禁用操作,所以建议直接卸载。

Q:不起作用 A:vscode扩展安装后需要重新加载

Q:作用范围 A:目前暂为全局

Q:下一步准备做什么 A:增加样式及其他常用工具类demo,逐步扩展,希望能多多贡献。

转载地址:http://kogxo.baihongyu.com/

你可能感兴趣的文章
百度SiteApp开始清理未备案的网站
查看>>
Lync Server 2013 实战系列之五:标准版-定义拓扑生成器
查看>>
统计数据库大小
查看>>
【Visual C++】游戏开发笔记十五 游戏人工智能(一) 运动型游戏AI
查看>>
Linux 学习_samba
查看>>
不说技术~有时,开发者还是应该讲究一点!
查看>>
如何做好工作流定义
查看>>
.NET I/O 学习笔记:目录和文件
查看>>
pgpool-II3.1 的begin transaction 和 自动追加 BEGIN/COMMIT问题
查看>>
(转)记hadoop故障一例:BlockAlreadyExistsException
查看>>
hdu 4284 Travel floyd + 状压DP
查看>>
相似数据检测算法
查看>>
spring中的设计模式Observer pattern
查看>>
Lazarus 1.0.2 发布,Pascal 集成开发环境
查看>>
内核进程的堆栈 [转]
查看>>
xp|win7中删除过期的[自定义通知]
查看>>
IBM SOA[ESB,BPM,Portal等]基础架构图解
查看>>
分享:在django中执行脚本
查看>>
试用mysql的infobright引擎
查看>>
BIND9源码分析奠基
查看>>