Vue3中使用Monaco Editor代码编辑器记录——主动触发代码补全功能(python和sql为例)~持续更新

Vue3中使用Monaco Editor代码编辑器记录——主动触发代码补全功能~持续更新

近期因为毕设的原因,需要使用代码编辑器,我采用monaco-editor代码编辑器

前端框架使用Vue3 + elementUI
monaco-editor插件版本@0.30.1
monaco-editor-webpack-plugin插件版本@6.0.0

若还没有安装插件,具体安装步骤和一些基础使用可以查看上一篇Vue3中使用Monaco Editor代码编辑器记录~持续更新

主动触发代码补全Completion

此处以pythonsql自动补全为例进行说明

1. registerCompletionItemProvider函数

monaco-editor提供了代码自动补全的函数registerCompletionItemProvider,其参数如下。可以看到有两个参数,分别是languageIdprovider

export function registerCompletionItemProvider(languageId: string, provider: CompletionItemProvider): IDisposable;

具体使用:

monaco.languages.registerCompletionItemProvider('python', {
   
   
	// provideCompletionItems有四个参数model、position、context、token,可根据需要使用
	provideCompletionItems: function (model, position, context, token) {
   
   
		// ......
	},
});
2. 踩坑

一开始,我百度之后是这样写的:

// 创建python代码提醒
monaco.languages.registerCompletionItemProvider('python', {
   
   
	provideCompletionItems: function () {
   
   
		// ......
	},
	triggerCharacters: [':', 'F', 'i']
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值