vue3使用codemirror-editor-vue3代码编辑器以及解决格式不对齐 整体左偏问题

一、使用

1.安装

npm install codemirror-editor-vue3 codemirror@5.x -S
npm install @types/codemirror -D

2.使用
 

import Codemirror from 'codemirror-editor-vue3';
import { formDesign } from '/@/stores/formDesign';
import 'codemirror/mode/javascript/javascript.js';
import type { CmComponentRef } from 'codemirror-editor-vue3';
import type { Editor, EditorConfiguration } from 'codemirror';
import 'codemirror/addon/display/placeholder.js';
const code = ref(`
[
  {
    "label": "标签1",
    "value": "value1",
    "children": [
      {
        "label": "标签11",
        "value": "value11"
      },
      {
        "label": "标签12",
        "value": "value12"
      }
    ]
  },
  {
    "label": "标签2",
    "value": "value2",
    "children": [
      {
        "label": "标签21",
        "value": "value21"
      },
      {
        "label": "标签22",
        "value": "value22"
      }
    ]
  }
]
`);
const cmRef = ref<CmComponentRef>();
const cmOptions: any = {
	mode: 'text/javascript',
	autoRefresh: true,
};

const onChange = (val: string, cm: Editor) => {
	console.log(val);
	console.log(cm.getValue());
};

const onInput = (val: string) => {
	console.log(val);
};

const onReady = (cm: Editor) => {
	console.log(cm.focus());
};
onUnmounted(() => {
	cmRef.value?.destroy();
});

 二、格式不对齐 整体左偏问题

增加配置项 autoRefresh: true:尝试在 cmOption 中添加 autoRefresh: true

const cmOptions: any = {
	mode: 'text/javascript',
	autoRefresh: true,
};

还是不行的话在需要的地方进行手动刷新,比如视图渲染的时候,比如弹框打开的时候,例如某个数据回来之后
 

	nextTick().then(() => {
		cmRef.value?.refresh();
	});

codemirror-editor-vue3 - npm (npmjs.com)

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
CodeMirror是一个用于在网页中创建和编辑代码的JavaScript库。它提供了丰富的功能和灵活的配置选项,可以适用于各种编程语言。CodeMirror的官方文档可以在中找到。在参考文档中,可以找到有关如何配置CodeMirror编辑器的信息。 在Vue 3中使用CodeMirror编辑器,可以通过安装codemirror-editor-vue3包来实现。该包是一个Vue 3的封装组件,可以方便地在Vue项目中使用CodeMirror编辑器。你可以在中找到该项目的详细信息和使用说明。 使用codemirror-editor-vue3的步骤如下: 1. 在Vue项目中安装codemirror-editor-vue3包。 2. 在需要使用CodeMirror编辑器的组件中引入codemirror-editor-vue3组件。 3. 在该组件的模板中使用codemirror-editor-vue3组件,并设置相应的props和事件处理函数。 4. 在组件的script部分,可以通过import语句引入需要使用的编程语言的js文件,例如如果需要使用Python语言,可以引入"codemirror/mode/python/python.js"。 5. 在CodeMirror编辑器的配置选项中,设置mode为相应的编程语言模式,例如对于Python语言,可以设置mode为"text/x-python"。 6. 根据项目需要,可以设置其他的CodeMirror编辑器配置选项,如主题、自动补全等。 请注意,使用codemirror-editor-vue3之前,确保已经安装了Vue 3和CodeMirror库,并按照官方文档进行了配置和使用。 参考资料: CodeMirror官方文档:https://codemirror.net/5/mode/index.html codemirror-editor-vue3项目信息和使用说明
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值