@white-matrix/chainide-proxy-implements
v0.1.4
Published
- 支持 script 标签引入 或 es6 模块引入 - 提供 chainIDE 提供的 API 以及 默认 event (获取文件内容,获取文件修改事件...) - 支持往 chainIDE 注册内部 function 和 event 供其他组件使用 - 目前插件提供两块 view 注册区域,包含左侧 panel,与中间的 tabPanel,其中左侧 panel 必须包含 menuIcon
Downloads
12
Keywords
Readme
Description
- 支持 script 标签引入 或 es6 模块引入
- 提供 chainIDE 提供的 API 以及 默认 event (获取文件内容,获取文件修改事件...)
- 支持往 chainIDE 注册内部 function 和 event 供其他组件使用
- 目前插件提供两块 view 注册区域,包含左侧 panel,与中间的 tabPanel,其中左侧 panel 必须包含 menuIcon
API
const newChainIdeProxyImp = new ChainIdeProxyImp({ pluginId: 'simplePlugin' });
// 注册插件方法(跨插件调用)
newChainIdeProxyImp.registerApiFunction(
'registerSimplePluginFunc',
({ data }) => {
console.log('registerSimplePluginFunc', data);
return data;
}
);
// 调用插件注册方法
newChainIdeProxyImp
.callApiFunction(
'simplePlugin',
'registerSimplePluginFunc',
'registerSimplePluginFunc res'
)
.then(({ data }) => {
console.log('simplePlugin register function', data);
});
// 插件内部订阅事件(跨插件通知)
newChainIdeProxyImp.subscribeEvent(
'registerSimplePluginFunc.someChange',
({ data }) => console.log(data)
);
// 发布事件,可用于系统事件与插件内部事件相互通知
newChainIdeProxyImp.publishEvent(
'registerSimplePluginFunc.someChange',
'event'
);
// 调用 chainIDE fileSystem 提供的方法 获取文件树
newChainIdeProxyImp.fileSystemService('getFileTree').then(({ data }) => {
console.log(data);
});
// 调用 chainIDE fileSystem 获取文件内容
newChainIdeProxyImp
.fileSystemService('getFileContent', 'root/storage.sol')
.then(({ data }) => {
console.log(data);
});
// 调用 chainIDE fileSystem 获取文件 path list 第二个参数为正则
newChainIdeProxyImp
.fileSystemService('getAllPathByRegex', '.*')
.then(({ data }) => {
console.log('getAllPathByRegex', data);
});
// 订阅 ChainIDE 系统事件文件变动
newChainIdeProxyImp.subscribeEvent('onFileContentChange', ({ data }) => {
console.log(data);
});