• 技术文章 >开发工具 >VSCode

    两个vscode中编写typescript的好用插件推荐

    青灯夜游青灯夜游2020-09-04 10:24:08转载1910

    由于项目组最近准备从javascript迁移到typescript;在使用ts过程中有部分类型定义代码片段有重复;所以编写了两个vscode插件;如有需要可以查阅。【推荐:vscode基础教程

    tools1: JSON转换成typescript的interface

    特色

    1、从剪切板json数据转换成interface (windows: ctrl+alt+C , Mac : ^+?+C)

    1.gif

    2、选择json数据转换成interface (windows: ctrl+alt+S , Mac : ^+?+S)

    2.gif

    3、将json文件转换成interface (windows: ctrl+alt+F , Mac : ^+?+F)

    3.gif

    下载

    上面的gift图可能播放较快,有兴趣同学可以下载使用:打开vscode插件并搜索json转ts

    tools2: vscode-react-typescript-snippet

    使用ts编写react代码片段。

    下载

    打开vscode插件并搜索vscode-react-typescript-snippet即可。

    支持文件

    代码片段

    TriggerContent
    tsrcc→react 类式组件
    tsrcstate包含Props, State, 和 constructor的类式组件
    tsrpcc→react PureComponent组件
    tsrpfcreact 函数式组件
    tsdrpfc拥有default export的函数式react组件
    tsrfc无状态的函数式react组件
    conc→react constructor 方法
    cwm→componentWillMount 方法
    ren→render 方法
    cdm→componentDidMount 方法
    cwrp→componentWillReceiveProps 方法
    scu→shouldComponentUpdate 方法
    cwu→componentWillUpdate 方法
    cdu→componentDidUpdate 方法
    cwum→componentWillUnmount 方法
    sst→this.setState生成
    bnd→绑定语句
    met→创建一个方法
    tscredux→创建一个类式的redux,包含connect
    tsrfredux->创建一个函数式的redux,包含connect
    imt生成一个import语句

    state 相关

    tsrcstate

    import * as React from "react";
    
    export interface IAppProps {}
    
    export interface IAppState {}
    
    export default class App extends React.Component<IAppProps, IAppState> {
      constructor(props: IAppProps) {
        super(props);
    
        this.state = {};
      }
    
      render() {
        return <div></div>;
      }
    }

    functional 相关

    tsrfc

    import * as React from "react";
    
    interface IAppProps {}
    
    const App: React.FC<IAppProps> = (props) => {
      return <div></div>;
    };
    
    export default App;

    redux 相关

    tsrcredux

    import * as React from "react";
    import { connect } from "react-redux";
    import { Dispatch } from "redux";
    // you can define global interface ConnectState in @/state/connect.d
    import { ConnectState } from "@/state/connect.d";
    
    export interface IAppProps {}
    
    export type ReduxType = ReturnType<typeof mapStateToProps> &
      ReturnType<typeof mapDispatchToProps> &
      IAppProps;
    
    class App extends React.Component<ReduxType> {
      render() {
        return <div></div>;
      }
    }
    
    const mapStateToProps = (state: ConnectState) => {
      return {};
    };
    const mapDispatchToProps = (dispatch: Dispatch) => {
      return {};
    };
    
    export default connect(mapStateToProps, mapDispatchToProps)(App);

    tsrfredux

    import * as React from "react";
    import { connect } from "react-redux";
    import { Dispatch } from "redux";
    // you can define global interface ConnectState in @/state/connect.d
    import { ConnectState } from "@/state/connect.d";
    
    export interface IAppProps {}
    
    export type ReduxType = ReturnType<typeof mapStateToProps> &
      ReturnType<typeof mapDispatchToProps> &
      IAppProps;
    
    const App: React.FC<ReduxType> = (props) => {
      return <div></div>;
    };
    
    const mapStateToProps = (state: ConnectState) => {
      return {};
    };
    const mapDispatchToProps = (dispatch: Dispatch) => {
      return {};
    };
    
    export default connect(mapStateToProps, mapDispatchToProps)(App);

    tsrpfc

    import * as React from "react";
    
    export interface IAppProps {}
    
    export function App(props: IAppProps) {
      return <div></div>;
    }

    相关推荐:编程教学!!

    以上就是两个vscode中编写typescript的好用插件推荐的详细内容,更多请关注php中文网其它相关文章!

    声明:本文转载于:segmentfault,如有侵犯,请联系admin@php.cn删除
    专题推荐:vscode typescript
    上一篇:推荐10个VSCode中很棒的浅色主题 下一篇:vscode怎么设置Vue别名路径智能提示?
    线上培训班

    相关文章推荐

    • 谈谈Node.js热更新的配置和vscode断点调试• 详解VSCode+PHPstudy配置PHP开发环境的步骤• 提高开发效率的实用VSCode插件推荐• 8个好用的VSCode扩展工具,让你编码嗨到翻!• 推荐10个VSCode中很棒的浅色主题

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网