百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

uniapp中使用ace在网页上做代码编辑器

moboyou 2025-07-25 20:49 3 浏览

A、安装

npm install ace-builds

B、在uniapp中使用

<template>
	<view class="content">
	   <div id="editor">ssss</div>
	   <button v-on:click="bb">格式</button>
	   <button v-on:click="aa">压缩</button>
	</view>
</template>

<script>
	 import ace from 'ace-builds/src-noconflict/ace';
   import 'ace-builds/src-noconflict/mode-javascript';
	 import 'ace-builds/src-noconflict/mode-golang';
	 import 'ace-builds/src-noconflict/mode-json';
	 import 'ace-builds/src-noconflict/mode-html';
    import 'ace-builds/src-noconflict/theme-monokai';
	 import 'ace-builds/src-noconflict/theme-dracula';
   import 'ace-builds/src-noconflict/ext-language_tools';
	 import 'ace-builds/src-noconflict/ext-beautify';
	export default {
		data() {
			return {
				title: 'Hello'
			}
		},
		  mounted() {
		    this.initEditor();
		  },
		onLoad() {

		},
		methods: {
			initEditor() {
				    const editor = ace.edit('editor'); // 初始化Ace Editor
             //editor.setTheme("ace/theme/dracula");
				    editor.setTheme("ace/theme/monokai");    //主题
					  editor.session.setMode("ace/mode/json"); //语言类型
				    //editor.session.setMode("ace/mode/golang");
				    //editor.session.setMode("ace/mode/javascript");
				    editor.setValue('{}'); // 设置初始代码值
			},
			bb(){
				const editor = ace.edit('editor'); // 初始化Ace Editor
				editor.session.setMode("ace/mode/json");
				var code =editor.getValue();				
				JSON.stringify(JSON.parse(code), null, 2)
				editor.setValue(JSON.stringify(JSON.parse(code), null, 2));
			},
			aa(){
				const editor = ace.edit('editor'); // 初始化Ace Editor
				editor.session.setMode("ace/mode/json");
				var code =editor.getValue();
				let ss = JSON.stringify(JSON.parse(code))
				editor.setValue(ss);
			}
		}
	}
</script>
<style>
  #editor { width: 100%; height: 700px; font-size: 14px;line-height: 20px;}
</style>

注意点:使用主题和模型一定要对应引用

如:使用editor.setTheme("ace/theme/dracula") 就需要引用 import '
ace-builds/src-noconflict/theme-dracula'

C、演示效果


相关推荐

8个最好的WordPress缓存优化插件介绍2023

如果你的WordPress网站打开非常缓慢,它大大增加了访客离开的几率,毕竟没有多少人有这么多耐心。所以提高你的WordPress网站速度的一个好方法是使用WordPress的缓存插件。在这篇文章中,...

WordPress插件依赖症晚期:为什么你的网站装了50个插件还能跑?

最近接手一个"插件博物馆"级别的网站——装了58个插件,首页加载8秒,后台卡到连发布文章都要念佛经祈求不报错。客户还一脸天真:"可是每个插件都说自己能提升性能啊!"插件...

WordPress 网站缓存插件推荐:WP Rocket

WPRocket是WordPress的高级缓存插件。由于该插件仅是高级插件,因此非常注重高质量的支持。它背后的团队非常乐意帮助解决可能出现的任何疑问或问题。WPRocket的优点一键配置自...

(合集)小众但好用的WordPress插件

还在犹豫什么?好运的机会稍纵即逝!赶紧关注我,一起开启幸运之旅吧!祝您财运亨通,心想事成!(合集)小众但好用的WordPress插件WordPress插件江湖:一场“小众”与“大众”的暗战老王,一位浸...

WordPress外贸站插件大战:27个插件互相打架差点搞垮网站

今天遇到个奇葩问题,客户网站莫名其妙白屏了诡异现象:前台白屏,后台能进错误日志疯狂刷屏,1小时500MBCPU占用率飙到100%,服务器快冒烟了技术侦探过程:一查插件列表直接惊呆了!客户装了2...

WordPress外贸站插件选择:别让插件“增肥”了你的网站

上个星期,一个做跨境电商的客户找我,问他站点咋回事,后台慢得要死,每个页面都加载几秒钟。他已经装了10多个插件,包括好几个外贸常见的支付、SEO、表单、社交分享插件。我一看后台,发现他装的插件里大多功...

7个最好的WordPress数据库优化插件

每个WordPress网站都有数据库,它包含了你网站上的所有信息,从用户数据到评论、文章等等。随着你的网站的增长,它的数据库也在增长,在许多情况下,你最终会储存大量的信息,远远超出了它的用途。这可能会...

uniapp中使用ace在网页上做代码编辑器

A、安装npminstallace-buildsB、在uniapp中使用<template><viewclass="content"><...

视频下载工具,Downlodr软件体验(视频下载器android)

经常给大家分享软件,果核在后台也能收到很多朋友的许愿,想要找某一款软件,有没有更好的替代品等等,上周看到有朋友说想要一款下载器,用来下载油管上的内容。这类工具其实有挺多的,在网上搜索一下也能找到不少,...

2025年,几款视频制作软件让你轻松成为剪辑高手

在众多的视频制作软件中,万兴喵影以其强大的功能和易用性脱颖而出。它不仅支持多种格式的导入导出,还有丰富的模板与素材库,非常适合初学者和专业用户使用。除了万兴喵影,还有一些其他国外的视频制作软件也值得推...

为什么现在很多软件都基于Electron开发?

前段时间小白在聊到电脑内存这个玩意儿的时候,大部分小伙伴都表示:新电脑至少32GB运行内存起步。对于这个答案,小白并不否认。因为小白的电脑也是至少32GB起步的(但是因为兜里空空,所以没办法把常用的M...

前端黑科技:PWA,让网页像App一样好用

PWA是什么?想象一下:你的网页应用不用安装,却能像微信小程序一样秒开,还能离线使用、推送通知,甚至被用户添加到手机桌面——这就是PWA(渐进式Web应用)。Google在2016年推出的这项技术,让...

免费在线装柜软件哪家好用(在线装柜计算软件)

在出口行业,有一个常被忽视却影响巨大的环节——集装箱装柜规划。一旦方案失误,不仅导致出货延误、运输成本上升,甚至还可能造成货损或退运。对于习惯“凭经验装柜”的企业而言,货物越来越多样化、运输方式更加复...

PakePlus:开源免费,一键打包网页为桌面与移动应用的神器

软件介绍该开源项目的功能非常简单,就是可以直接将网页打包成不同平台的程序,可以是应用也可以是app,非常适合一些站长但是不会创建app的情况。不过使用该软件进行站点打包之前你需要拥有一个github账...

如何对dedeCMS的开源程序进行二次开发

二次开发,简单的说就是在现有的软件上进行定制修改,功能的扩展,然后达到自己想要的功能和效果,一般来说都不会改变原有系统的内核。为了让更多人了解二次开发,并更方便的了解DedeCMS的二次开发,下面将会...