Skip to content

lingxiaoguang/babel-plugin-go-style-error-handle

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

babel-plugin-go-style-error-handle-babel-plugin

go风格的error handler的 eslint plugin

栗子:

转换前:

async function fun(){
    const res = await JSON.parse('//');
    console.log(res);
    return res;
}

转换后

"use strict";

async function fun() {
  var res = await(async function () {
    try {
      return {
        result: await JSON.parse('//')
      };
    } catch (e) {
      return {
        error: e,
        result: null
      };
    }
  })();
  ;
  console.log(res);
  return res;
}

在线演示

  1. 打开babel试一试
  2. 点击添加插件,搜索babel-plugin-go-style-error-handle

测试

npm run test

使用

yarn global add babel-plugin-go-style-error-handle
{
  plugins: 'babel-plugin-go-style-error-handle'
}

其他

本来是想实现:=语法转换的,看了下文档发现babel parser没有插件机制,只能fork下来改源码,目前没有深入研究。所以只是转换了赋值操作。

还有很多问题啊,只是研究性质的。

About

go风格的error handle 的babel plugin

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published