Skip to content

AiCodeEditor Monaco 编辑器

AiCodeEditor 是一个基于 Monaco Editor 封装的高性能代码编辑器组件。它保留了 VS Code 级别的编辑体验,完美集成于 AI 对话流程中的源码编辑场景。支持多语言语法高亮、自动补全及多种主题。

基础用法

使用 v-model 进行双向绑定,支持通过 height 控制尺寸。

切换语言与只读

支持动态切换 language 和设置 readonly 模式。

API

Props

属性名说明类型默认值
v-model / modelValue代码内容string''
initialValue初始代码(优先于 modelValue 用于首屏)stringundefined
language代码语言string'javascript'
readonly是否只读booleanfalse
theme编辑器主题'vs' | 'vs-dark' | 'hc-black''vs-dark'
height编辑器高度string | number300
minimap是否显示 Minimapbooleanfalse
wordWrap自动换行'on' | 'off' | 'wordWrapColumn' | 'bounded''on'
fontSize字体大小number14
tabSize制表符宽度number2
autofocus自动聚焦booleantrue
themeOverrides主题覆盖变量ComponentThemeVarsundefined

Events

事件名说明参数
update:modelValue代码内容变化时触发(value: string) => void
change代码内容变化时触发(value: string) => void
mount编辑器挂载完成时触发() => void
dispose编辑器销毁时触发() => void

Methods

方法名说明参数
getEditor获取 Monaco 实例对象() => IStandaloneCodeEditor
focus使编辑器获得焦点() => void
setValue手动设置代码内容(value: string) => void
getValue获取当前代码内容() => string

Released under the MIT License.