分享更有价值
被信任是一种快乐

angular如何使用monaco-editor

文章页正文上

今天小编给大家分享一下angular如何使用monaco-editor的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。在 angular12 及之前你可以选择monaco-editorngx-monaco-editor这是没有问题的 但是如果你使用了更高版本的 angular 在使用 npm 安装 ngx-monaco-editor 时 会报错。因为原作者似乎已经停止了对这个库的维护 最终的支持停留在了 angular12 版本当然 你选择可以选择正如提示那样 用 –force 或者 –legacy-peer-deps 来解决问题但是为了 消除/避免 隐藏的一些问题 我在原作者的基础上将框架的 angular 支持提升到了 14 并且会一直更新当然 你也可以选择将作者的源代码移入自己的本地代码中 这也是完全没有问题的base-editor.ts 引入 monaco-editorconfig.tsdiff-editor.component.tseditor.component.tseditor.module.tstypes.ts你只需要移动 lib 目录下的六个文件 然后把它们当成自己项目中的一个 module 去使用就好了其实所有的 api 都可以在 editor.api.d.ts 这个文件中找到

//在这个editor下就可以找到所有TS类型
import{editor}from'monaco-editor';

下面记录一下常用的1、设置

//eg
exportconstREAD_EDITOR_OPTIONS:editor.IEditorOptions={
readOnly:true,
automaticLayout:false,
minimap:{
enabled:false,
},
renderFinalNewline:false,
scrollbar:{
vertical:'visible',
},
mouseWheelZoom:true,
contextmenu:false,
fontSize:16,
scrollBeyondLastLine:false,
smoothScrolling:true,
cursorWidth:0,
renderValidationDecorations:'off',
colorDecorators:false,
hideCursorInOverviewRuler:true,
overviewRulerLanes:0,
overviewRulerBorder:false,
};

2、获取editor实例



publicinitViewEditor(editor:editor.ICodeEditor):void{
//这个editor就是实例
//下面方法中的editor就是这里的editor
this.editor=editor
}

3、获取当前光标位置

editor.getPosition()

4、获取当前鼠标选中的文本

editor.getModel().getValueInRange(editor.getSelection());

5、修改光标位置

editor.setPosition({
column:1,
lineNumber:1,
});

6、滚动指定行到可视区中间

editor.revealLineInCenter(1);

7、绑定事件

editor.onMouseDown(event=>{
//dosomething
});
editor.onKeyDow免费云主机、域名n(event=>{
//dosomething
});

8、保存/恢复快照

constsnapshot=editor.saveViewState();
editor.restoreViewState(snapshot);

9、阻止某个事件

//eg组件默认的搜索快捷键
functionisMac(){
return/macintosh|macosx/i.test(navigator.userAgent);
}

editor.onKeyDown(event=>{
if(
(isMac()&&event.browserEvent.key==='f'&&event.metaKey)||
(!isMac()&&event.browserEvent.key==='f'&&event.ctrlKey)
){
event.preventDefault();
event.stopPropagation();
}
});

以上就是“angular如何使用monaco-editor”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注云技术行业资讯频道。

相关推荐: idea如何运行vue.js代码

本篇内容介绍了“idea如何运行vue.js代码”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! 1.安装vue-cli在你的电脑上安装vue-cli是运行vue…

文章页内容下
赞(0) 打赏
版权声明:本站采用知识共享、学习交流,不允许用于商业用途;文章由发布者自行承担一切责任,与本站无关。
文章页正文下
文章页评论上

云服务器、web空间可免费试用

宝塔面板主机、支持php,mysql等,SSL部署;安全高速企业专供99.999%稳定,另有高防主机、不限制内容等类型,具体可咨询QQ:360163164,Tel同微信:18905205712

主机选购导航云服务器试用

登录

找回密码

注册