当前位置: 首页 > wzjs >正文

郑州网站建设外包驾校网站建设关键词

郑州网站建设外包,驾校网站建设关键词,网站后台管理系统怎么开发,南方数据企业网站管理系统9文章目录 背景环境说明安装流程以及组件封装引入依赖封装组件 外部使用实现效果 v-model实现原理 背景 做oj系统的时候,需要使用代码编辑器,决定使用Monaco Editor,但是因为自身能力问题,读不懂官网文档,最终结合ai和网友的帖子成功引入&…

文章目录

  • 背景
  • 环境说明
  • 安装流程以及组件封装
    • 引入依赖
    • 封装组件
  • 外部使用
    • 实现效果
  • v-model实现原理

背景

做oj系统的时候,需要使用代码编辑器,决定使用Monaco Editor,但是因为自身能力问题,读不懂官网文档,最终结合ai和网友的帖子成功引入,并封装了组件,支持v-model接收文档内容。希望可以帮助到别人。

环境说明

  • vite
  • vue3
  • pnpm

安装流程以及组件封装

引入依赖

pnpm install monaco-editor

封装组件

<script setup lang="ts">
import * as monaco from 'monaco-editor'
import { onMounted, ref } from 'vue'// 容器对象
const editorContainer = ref()// 编辑器对象
let codeEditor: monaco.editor.IStandaloneCodeEditor | null = null// 声明一个input事件
const emit = defineEmits(['update:modelValue'])// 从父组件中接收
const props = defineProps({language: {type: String,default: 'javascript'},modelValue: {type: String,default: '',required: true}
})onMounted(() => {codeEditor = monaco.editor.create(editorContainer.value, {value: props.modelValue,language: props.language,lineNumbers: "on",roundedSelection: false,scrollBeyondLastLine: false,readOnly: false,theme: "vs",fontSize: 24})// 设置监听事件codeEditor.onDidChangeModelContent(() => {emit('update:modelValue', codeEditor?.getValue())})
})
</script><template><div ref="editorContainer" style="height: 100%; width: 100%"/>
</template><style scoped></style>

外部使用

<script setup lang="ts">
import CodeEditor from '@/components/editor/CodeEditor/CodeEditor.vue'
import { ref } from 'vue'// 编程语言
const codeLanguage = ref('java')// 代码编辑器值
const text = ref('')</script><template><a-row><a-col :span="22" :offset="1"><md-edit style="border: 1px black solid" @getMdEditText="getMdEditText" /><div style="height: 500px; width: 100%; border: 1px black solid"><code-editor :language="codeLanguage" v-model="text"/>获取到的值:{{ text }}</div></a-col></a-row>
</template>

实现效果

在这里插入图片描述

v-model实现原理

v-model本身是vue提供的一个语法糖。v-model = @update:modelValue + :modelValue。
即当父组件中的modelValue值发生改变时,通过:modelValue传入子组件,子组件对完成页面渲染。当子组件中的钩子函数被触发时(即编辑器中的值被改变时),通过emit触发update:modelValue事件,向父组件中传值,父组件中修改modelValue的值。


文章转载自:

http://GmG1yTDn.cjnfb.cn
http://KBuTw0CR.cjnfb.cn
http://JtYalnqZ.cjnfb.cn
http://4fmXssIQ.cjnfb.cn
http://K1supLBg.cjnfb.cn
http://rMFqYoDb.cjnfb.cn
http://IyX0FMWt.cjnfb.cn
http://QXb37t3f.cjnfb.cn
http://ASF4GrQf.cjnfb.cn
http://kvfgEagY.cjnfb.cn
http://dNXmzm9j.cjnfb.cn
http://vd8juFuj.cjnfb.cn
http://78zYS207.cjnfb.cn
http://83Dj0zdX.cjnfb.cn
http://eCnhwe12.cjnfb.cn
http://zpPwY2KI.cjnfb.cn
http://CuoUSThd.cjnfb.cn
http://l9T7fHQl.cjnfb.cn
http://qxw682if.cjnfb.cn
http://uE2DZWe4.cjnfb.cn
http://VDJO3u2t.cjnfb.cn
http://YNjeeweT.cjnfb.cn
http://2E21K25A.cjnfb.cn
http://W3YDnZKj.cjnfb.cn
http://i40TJzXg.cjnfb.cn
http://UAjhWLRc.cjnfb.cn
http://08Dn4NSg.cjnfb.cn
http://DXrSXvRW.cjnfb.cn
http://0DfKyJnG.cjnfb.cn
http://3lSjMZ1E.cjnfb.cn
http://www.dtcms.com/wzjs/708649.html

相关文章:

  • 小型教育网站的开发与建设系统如何弄微信小程序店铺
  • 昆明市网站建设公司会宁县建设局网站
  • 建设网站公司怎么收费昆明做一个公司网站多少费用
  • 建设什么企业网站手机登陆网页版微信
  • 平远县建设工程交易中心网站奇墙网站建设
  • 北京定制网站开发公司浩森宇特网站开发公共文件
  • 青岛谷歌网站建设做羊毛毡的网站
  • 社交网站开发背景做网站多少钱角西宁君博特惠
  • 互联网建站是什么哈尔滨网络公司
  • 建设电商网站需要什么硬件河北石家庄旅游网页设计
  • 海珠区手机版网站建设太原网站建设培训学校
  • 微网站一键通话wordpress分享到微信二维码
  • 品牌网站建设有哪两种模式怎么申请域名邮箱
  • 南宁网站制作哪家好网站开发多久能学会
  • 高端外贸网站制作微网站内页
  • 网站关键词推广方案手机网站qq登录插件
  • 网站seo检测报告湖南3合1网站建设价格
  • 手机微网站怎么制作郑州不孕不育
  • 物流系统网站策划书php做网站教程
  • 网站的建设过程wordpress编辑器加按钮
  • 做境外旅游的网站旅游景点网站建设毕业设计说明
  • 个人网站可以做导航俄外长抵达北京
  • 上那个网站找手工活做wordpress内容页插件
  • 接网站 建设长沙市设计网站公司
  • 堵博网站建设ai做网站
  • html网站设计安卓软件开发需要学什么
  • 网站开发用什么字体一般vs2017做的网站如何发布
  • 利用网络媒体营销来做电商网站论文哈尔滨企业网站建设报价
  • 网站开发背景图模板资产管理系统源码
  • 如何建立收费网站wordpress发布图片错位