国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

目錄
安裝依賴" >安裝依賴
使用" >使用
首頁 web前端 js教程 淺析angular中怎么使用monaco-editor

淺析angular中怎么使用monaco-editor

Oct 17, 2022 pm 08:04 PM
angular

angular中怎么使用monaco-editor?下面本篇文章記錄下最近的一次業(yè)務中用到的 monaco-editor 在 angular 中的使用,希望對大家有所幫助!

淺析angular中怎么使用monaco-editor

安裝依賴

在 angular12 及之前你可以選擇

  • monaco-editor
  • ngx-monaco-editor

這是沒有問題的 但是如果你使用了更高版本的 angular 在使用 npm 安裝 ngx-monaco-editor 時 會報錯?!鞠嚓P教程推薦:《angularjs視頻教程》】

因為原作者似乎已經(jīng)停止了對這個庫的維護 最終的支持停留在了 angular12 版本

1.png

當然 你選擇可以選擇正如提示那樣 用 --force 或者 --legacy-peer-deps 來解決問題

但是為了 消除/避免 隱藏的一些問題 我在原作者的基礎上將框架的 angular 支持提升到了 14 并且會一直更新

@rickzhou/ngx-monaco-editor

github github.com/rick-chou/n…

npm www.npmjs.com/package/@ri…

當然 你也可以選擇將作者的源代碼移入自己的本地代碼中 這也是完全沒有問題的

  • base-editor.ts 引入 monaco-editor
  • config.ts
  • diff-editor.component.ts
  • editor.component.ts
  • editor.module.ts
  • types.ts

2.png

github.com/rick-chou/n…

你只需要移動 lib 目錄下的六個文件 然后把它們當成自己項目中的一個 module 去使用就好了

使用

其實所有的 api 都可以在 editor.api.d.ts 這個文件中找到

// 在這個editor下就可以找到所有TS類型
import { editor } from 'monaco-editor';

下面記錄一下常用的

1、設置

// eg
export const READ_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實例

<ngx-monaco-editor
  [options]="readEditorOptions"
  [(ngModel)]="originLogVal"
  (onInit)="initViewEditor($event, false)">
</ngx-monaco-editor>

public initViewEditor(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、滾動指定行到可視區(qū)中間

editor.revealLineInCenter(1);

7、綁定事件

editor.onMouseDown(event => {
  // do something
});
editor.onKeyDown(event => {
  // do something
});

8、保存/恢復快照

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

9、阻止某個事件

// eg 組件默認的搜索快捷鍵
function isMac() {
  return /macintosh|mac os x/i.test(navigator.userAgent);
}

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

更多編程相關知識,請訪問:編程視頻??!

以上是淺析angular中怎么使用monaco-editor的詳細內(nèi)容。更多信息請關注PHP中文網(wǎng)其他相關文章!

本站聲明
本文內(nèi)容由網(wǎng)友自發(fā)貢獻,版權歸原作者所有,本站不承擔相應法律責任。如您發(fā)現(xiàn)有涉嫌抄襲侵權的內(nèi)容,請聯(lián)系admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費脫衣服圖片

Undresser.AI Undress

Undresser.AI Undress

人工智能驅(qū)動的應用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用于從照片中去除衣服的在線人工智能工具。

Clothoff.io

Clothoff.io

AI脫衣機

Video Face Swap

Video Face Swap

使用我們完全免費的人工智能換臉工具輕松在任何視頻中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的代碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

功能強大的PHP集成開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級代碼編輯軟件(SublimeText3)

熱門話題

Laravel 教程
1601
29
PHP教程
1502
276
如何在Ubuntu 24.04上安裝Angular 如何在Ubuntu 24.04上安裝Angular Mar 23, 2024 pm 12:20 PM

Angular.js是一種可自由訪問的JavaScript平臺,用于創(chuàng)建動態(tài)應用程序。它允許您通過擴展HTML的語法作為模板語言,以快速、清晰地表示應用程序的各個方面。Angular.js提供了一系列工具,可幫助您編寫、更新和測試代碼。此外,它還提供了許多功能,如路由和表單管理。本指南將討論在Ubuntu24上安裝Angular的方法。首先,您需要安裝Node.js。Node.js是一個基于ChromeV8引擎的JavaScript運行環(huán)境,可讓您在服務器端運行JavaScript代碼。要在Ub

淺析angular中怎么使用monaco-editor 淺析angular中怎么使用monaco-editor Oct 17, 2022 pm 08:04 PM

angular中怎么使用monaco-editor?下面本篇文章記錄下最近的一次業(yè)務中用到的 monaco-editor 在 angular 中的使用,希望對大家有所幫助!

如何使用PHP和Angular進行前端開發(fā) 如何使用PHP和Angular進行前端開發(fā) May 11, 2023 pm 04:04 PM

隨著互聯(lián)網(wǎng)的飛速發(fā)展,前端開發(fā)技術也在不斷改進和迭代。PHP和Angular是兩種廣泛應用于前端開發(fā)的技術。PHP是一種服務器端腳本語言,可以處理表單、生成動態(tài)頁面和管理訪問權限等任務。而Angular是一種JavaScript的框架,可以用于開發(fā)單頁面應用和構建組件化的Web應用程序。本篇文章將介紹如何使用PHP和Angular進行前端開發(fā),以及如何將它們

聊聊Angular中的元數(shù)據(jù)(Metadata)和裝飾器(Decorator) 聊聊Angular中的元數(shù)據(jù)(Metadata)和裝飾器(Decorator) Feb 28, 2022 am 11:10 AM

本篇文章繼續(xù)Angular的學習,帶大家了解一下Angular中的元數(shù)據(jù)和裝飾器,簡單了解一下他們的用法,希望對大家有所幫助!

angular學習之詳解狀態(tài)管理器NgRx angular學習之詳解狀態(tài)管理器NgRx May 25, 2022 am 11:01 AM

本篇文章帶大家深入了解一下angular的狀態(tài)管理器NgRx,介紹一下NgRx的使用方法,希望對大家有所幫助!

一文探究Angular中的服務端渲染(SSR) 一文探究Angular中的服務端渲染(SSR) Dec 27, 2022 pm 07:24 PM

你知道 Angular Universal 嗎?可以幫助網(wǎng)站提供更好的 SEO 支持哦!

Angular + NG-ZORRO快速開發(fā)一個后臺系統(tǒng) Angular + NG-ZORRO快速開發(fā)一個后臺系統(tǒng) Apr 21, 2022 am 10:45 AM

本篇文章給大家分享一個Angular實戰(zhàn),了解一下angualr 結(jié)合 ng-zorro 如何快速開發(fā)一個后臺系統(tǒng),希望對大家有所幫助!

使用Angular和Node進行基于令牌的身份驗證 使用Angular和Node進行基于令牌的身份驗證 Sep 01, 2023 pm 02:01 PM

身份驗證是任何Web應用程序中最重要的部分之一。本教程討論基于令牌的身份驗證系統(tǒng)以及它們與傳統(tǒng)登錄系統(tǒng)的區(qū)別。在本教程結(jié)束時,您將看到一個用Angular和Node.js編寫的完整工作演示。傳統(tǒng)身份驗證系統(tǒng)在繼續(xù)基于令牌的身份驗證系統(tǒng)之前,讓我們先看一下傳統(tǒng)的身份驗證系統(tǒng)。用戶在登錄表單中提供用戶名和密碼,然后點擊登錄。發(fā)出請求后,通過查詢數(shù)據(jù)庫在后端驗證用戶。如果請求有效,則使用從數(shù)據(jù)庫中獲取的用戶信息創(chuàng)建會話,然后在響應頭中返回會話信息,以便將會話ID存儲在瀏覽器中。提供用于訪問應用程序中受

See all articles