国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

手把手教你搭建網(wǎng)頁(yè)代碼編輯器

ranwu / 1045人閱讀

摘要:如下,我們創(chuàng)建一個(gè)編輯代碼的編輯器上邊的代碼復(fù)制到文件即可運(yùn)行。完整的拓展列表在這里如下示例展示了開(kāi)啟語(yǔ)法糾錯(cuò)直接將代碼復(fù)制到文件即可運(yùn)行當(dāng)然,的功能十分豐富,比如按鍵映射主題定制模式等,更深入的使用可以查閱官網(wǎng)。

CodeMirror

CodeMirror 是一個(gè)可以鑲嵌到 Web 頁(yè)面中代碼編輯器組件。它的核心代碼庫(kù)僅僅提供了編輯器功能,沒(méi)有提供像是 自動(dòng)補(bǔ)全, 語(yǔ)法糾錯(cuò) 等IDE功能。
CodeMirror 提供了豐富的api,讓你可以輕易的拓展想要的功能。

使用方法 瀏覽器

在瀏覽器中使用的話,你需要引用編輯器核心 jscss 文件,每個(gè)編輯器主題對(duì)應(yīng)一個(gè)css文件,你需要引用你所指定的編輯器主題對(duì)應(yīng)的css。每個(gè)編輯器語(yǔ)言對(duì)應(yīng)一個(gè)js文件,需引入你需要編輯的語(yǔ)言對(duì)應(yīng)的js文件。

如下,我們創(chuàng)建一個(gè)編輯 javascript 代碼的編輯器:




  
  
  
  
  
  Document
  


  




上邊的代碼復(fù)制到html文件即可運(yùn)行。從上邊的代碼可以看到,我們使用 CodeMirror.fromTextArea() 創(chuàng)建了一個(gè)編輯器,當(dāng)然還有其他的方法來(lái)創(chuàng)建。

從textarea創(chuàng)建,會(huì)自動(dòng)替換textarea并且獲取textarea的值,填充到編輯器。


指定父級(jí)元素創(chuàng)建編輯器

如下代碼,CodeMirror 會(huì)創(chuàng)建一個(gè)編輯器,插入到 body 節(jié)點(diǎn)下。


模塊打包用法

我們可以通過(guò) Webpack 來(lái)打包使用 codemirror

先通過(guò) npm 下載codemirror:

npm i codemirror

引用 codemirror 所需要的 js 和 css 文件:

const CodeMirror = require("codemirror"); // 編輯器主邏輯文件
require("codemirror/mode/javascript/javascript.js"); // 編輯器支持 javascript
require("codemirror/lib/codemirror.css"); // 編輯器主樣式文件
require("codemirror/theme/material.css"); // 編輯器主題樣式文件

CodeMirror(document.body, {
  value: "console.log("codemirror")",
  mode: "javascript",
  theme: "material"
});
簡(jiǎn)單常用的api

在我們使用 CodeMirror 搭建編輯器之后,可能會(huì)用到下面一些簡(jiǎn)單的api。詳細(xì)的api列表在這里:api list.

getValue()

獲取編輯器當(dāng)前的值。

const editor = CodeMirror(document.body);

function getEditorValue() {
  return editor.getValue();
}

setValue(value: String)

改變編輯器的值。

const editor = CodeMirror(document.body);

function setEditorValue(value) {
  editor.setValue(value);
}

on(eventName: String, handler: Function)

編輯器時(shí)間監(jiān)聽(tīng)。

支持豐富的event類型,完整的event 類型你可以在這里查閱:event list。比如,我們可以監(jiān)聽(tīng)編輯器內(nèi)容改變,當(dāng)編輯器內(nèi)容改變時(shí),輸出編輯器的內(nèi)容:

const editor = CodeMirror(document.body);

editor.on("change", (codemirrorIns, codemirrorObj) => {
  console.log(editor.getValue());
});
IDE拓展

CodeMirror 支持豐富的IDE拓展,這些拓展放在 codemirror/addon文件夾下。我們可以通過(guò)引入該文件夾下的IDE文件,從而讓我們編輯器的功能更加豐富。完整的IDE拓展列表在這里:addon list.

如下示例展示了開(kāi)啟javascript語(yǔ)法糾錯(cuò):(直接將代碼復(fù)制到html文件即可運(yùn)行)




  
  
  
  
  
  
  Document
  










當(dāng)然,CodeMirror 的功能十分豐富,比如 按鍵映射主題定制Vim模式等,更深入的使用可以查閱 CodeMirror 官網(wǎng)。

本章完

我的Github: https://github.com/PengJiyuan
我的博客: https://isweety.me

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/54593.html

相關(guān)文章

  • 把手教你搭建網(wǎng)頁(yè)代碼輯器

    摘要:如下,我們創(chuàng)建一個(gè)編輯代碼的編輯器上邊的代碼復(fù)制到文件即可運(yùn)行。完整的拓展列表在這里如下示例展示了開(kāi)啟語(yǔ)法糾錯(cuò)直接將代碼復(fù)制到文件即可運(yùn)行當(dāng)然,的功能十分豐富,比如按鍵映射主題定制模式等,更深入的使用可以查閱官網(wǎng)。 CodeMirror CodeMirror 是一個(gè)可以鑲嵌到 Web 頁(yè)面中代碼編輯器組件。它的核心代碼庫(kù)僅僅提供了編輯器功能,沒(méi)有提供像是 自動(dòng)補(bǔ)全, 語(yǔ)法糾錯(cuò) 等IDE...

    Julylovin 評(píng)論0 收藏0
  • 把手教你如何安裝wordpress,怎么樣搭建個(gè)人博客!

    摘要:輕量應(yīng)用服務(wù)器是阿里云面向入門級(jí)云計(jì)算及簡(jiǎn)單應(yīng)用用戶,提供基于單臺(tái)云服務(wù)器的域名管理應(yīng)用部署安全和運(yùn)維管理的一站式綜合服務(wù)。輕量應(yīng)用服務(wù)器,是可快速搭建且易于管理的輕量級(jí)云服務(wù)器。上傳至云服務(wù)器,用或者都可以。總結(jié)一下使用wordpress搭建個(gè)人博客的三大步驟: 1.購(gòu)買阿里云服務(wù)器 2.選擇安裝wordpress鏡像操作系統(tǒng) 3.安裝配置wordpress 4.購(gòu)買域名,配置域名...

    Richard_Gao 評(píng)論0 收藏0
  • Gulp--把手教你搭建前端自動(dòng)化平臺(tái)

    摘要:前端的發(fā)展真的是快,前幾年還是刀耕火種的開(kāi)個(gè)編輯器,幾行和代碼就能上瀏覽器跑了。是啥官方的解釋是基于流的自動(dòng)化構(gòu)建工具。把運(yùn)動(dòng)的半成品看成是數(shù)據(jù),那么流動(dòng)的數(shù)據(jù)就是流。分工明確才能提高效率,這是社會(huì)發(fā)展的經(jīng)驗(yàn)總結(jié)。 前端的發(fā)展真的是快,前幾年還是刀耕火種的開(kāi)個(gè)編輯器,幾行html和js代碼就能上瀏覽器跑了。現(xiàn)在呢?各種包,各種庫(kù),各種框架,各種編程范式。究其原因,就是我們高中社會(huì)課本中...

    LeviDing 評(píng)論0 收藏0
  • 把手教你5分鐘用 PHP 搭建一個(gè)高性能服務(wù)化后端框架

    摘要:前言一直以來(lái),因?yàn)闃?biāo)準(zhǔn)應(yīng)用方式是配合或使用,而被認(rèn)為不適合做服務(wù)化后端。下面我就介紹如何用來(lái)搭建一個(gè)高性能的服務(wù)化后端框架,并且實(shí)現(xiàn)一個(gè)客戶端調(diào)用例子。服務(wù)端我使用的框架叫,地址在這里。 前言 一直以來(lái),PHP 因?yàn)闃?biāo)準(zhǔn)應(yīng)用方式是配合 php-fpm 或 apache mod 使用,而被認(rèn)為不適合做服務(wù)化后端。但是隨著 Workerman 和 Swoole 這些常駐進(jìn)程模塊的出現(xiàn),PH...

    Charles 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<