最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

node使用UEditor富文本編輯器的方法實例

 更新時間:2017年07月11日 15:09:10   作者:mnixu  
本篇文章主要介紹了node使用UEditor富文本編輯器的方法實例,具有一定的參考價值,有興趣的可以了解一下

大部分編輯器的后臺是基于java、php、asp等,很少有基于node.js的。今天就做一個基于node的

最近在做一個微信素材編輯器的小項目,使用到了UEditor編輯器,使用中出現了許多問題。

1.介紹

UEditor是由百度web前端研發(fā)部開發(fā)所見即所得富文本web編輯器,具有輕量,可定制,注重用戶體驗等特點,開源基于MIT協(xié)議,允許自由使用和修改代碼...

2.下載

下載地址 :http://www.fzitv.net/codes/45434.html

選擇開發(fā)版 ,因為我們使用node ,所以隨便下一個版本,這里下載1.4.3.3 jsp 版本

下載完成解壓。

3.創(chuàng)建項目

使用express生成器生成一個項目,并安裝好依賴模塊

$express ue-test -ejs 
$cd ue-test && npm install 

把剛剛壓縮好的文件重命名為ueditor 放入ue-test/pubilc 中

修改index.ejs頁面:

<!DOCTYPE html> 
<html> 
 <head> 
  <title><%= title %></title>  
  <meta http-equiv="Content-Type" content="text/html;charset=utf-8"/> 
  <script type="text/javascript" charset="utf-8" src="../ueditor/ueditor.config.js"></script> 
  <script type="text/javascript" charset="utf-8" src="../ueditor/ueditor.all.min.js"> </script> 
  <!--建議手動加在語言,避免在ie下有時因為加載語言失敗導致編輯器加載失敗--> 
  <!--這里加載的語言文件會覆蓋你在配置項目里添加的語言類型,比如你在配置項目里配置的是英文,這里加載的中文,那最后就是中文--> 
  <script type="text/javascript" charset="utf-8" src="../ueditor/lang/zh-cn/zh-cn.js"></script> 
 </head> 
 <body> 
   <script id="editor" type="text/plain" style="width:1024px;height:500px;"></script> 
 </body> 
 
 
<script type="text/javascript"> 
 
  //實例化編輯器 
  //建議使用工廠方法getEditor創(chuàng)建和引用編輯器實例,如果在某個閉包下引用該編輯器,直接調用UE.getEditor('editor')就能拿到相關的實例 
  var ue = UE.getEditor('editor'); 
 
</script> 
</html> 

然后啟動項目,編輯器初始化成功?。ㄗ⒁庖胛募窂降膯栴},如果初始化失敗可以f12查看報錯進行調試)

我們這里為什么要這樣引入路徑 可以看這里 (API


4.后端配置

僅僅這樣是不能進行上傳的

我們需要要配置后端文件。

 修改 ueditor.config.js 文件

//找到這一行代碼 修改成這樣,這里的url為請求的路徑 
// 服務器統(tǒng)一請求接口路徑 
    ,serverUrl: URL + "ue" 

接下來我們安裝ueditor 模塊

$npm install ueditor --save 

ueditor模塊有一個示例,照著修改就好了

修改app.js:

//加載ueditor 模塊 
var ueditor = require("ueditor"); 
 
//使用模塊 
app.use("/ueditor/ue", ueditor(path.join(__dirname, 'public'), function (req, res, next) { 
  // ueditor 客戶發(fā)起上傳圖片請求 
  if (req.query.action === 'uploadimage') { 
    var foo = req.ueditor; 
 
    var imgname = req.ueditor.filename; 
 
    var img_url = '/images/ueditor/'; 
    res.ue_up(img_url); //你只要輸入要保存的地址 。保存操作交給ueditor來做 
    res.setHeader('Content-Type', 'text/html');//IE8下載需要設置返回頭尾text/html 不然json返回文件會被直接下載打開 
  } 
  // 客戶端發(fā)起圖片列表請求 
  else if (req.query.action === 'listimage') { 
    var dir_url = '/images/ueditor/'; 
    res.ue_list(dir_url); // 客戶端會列出 dir_url 目錄下的所有圖片 
  } 
  // 客戶端發(fā)起其它請求 
  else { 
    // console.log('config.json') 
    res.setHeader('Content-Type', 'application/json'); 
    res.redirect('/ueditor/jsp/config.json'); 
  } 
})); 

修改完成重啟一下服務就好了,




5.其他配置

自動保存

//啟用自動保存 
,enableAutoSave: true 
//自動保存間隔時間, 單位ms 
,saveInterval: 500 

發(fā)現這樣啟用自動保存沒有成功,不知道為什么。

另一個方法是在實例編輯器之后調用

//實例化編輯器 
//建議使用工廠方法getEditor創(chuàng)建和引用編輯器實例,如果在某個閉包下引用該編輯器,直接調用UE.getEditor('editor')就能拿到相關的實例 
var ue = UE.getEditor('editor'); 
 
//注意一定要延時。要等這玩意載入成功。 
setTimeout(function () { 
  ue.execCommand('drafts'); 
}, 500); 

自動保存成功??!

取消自動保存

啟用自動保存的時候會發(fā)現一直提示,是不是很煩,反正我是不能忍,怎么辦呢?


設置一下自動保存間隔時間,把它設長一點就好了。

//啟用自動保存 
 ,enableAutoSave: true 
 //自動保存間隔時間, 單位ms 
 ,saveInterval: 500 * 60 *60 

這樣煩人的自動保存提示就不會出來了。

只取消提示

上面我取消自動保存之后會發(fā)現使用起來不舒服,每次刷新頁面,上次編輯的就沒有了。

我們能不能只取消提示,而保留自動保存功能呢。

我在網上找了下,并沒有發(fā)現。

那我們就自己寫一個簡單的保存吧。

我們可以使用html5的 localStorage 本地存儲功能,當我們離開當前頁面時候,把編輯器內容存儲到本地,進入頁面時候提取數據。上代碼:

 //實例化編輯器 
var ue = UE.getEditor('editor'); 
$(function() { 
  //初始化數據,讀localstroage  
 var allData = {}; 
 if (localStorage.getItem('ueditor_content')!=null && localStorage.getItem('ueditor_content')!="") { 
    allData =  JSON.parse(localStorage.getItem('ueditor_content'));  
  }  
 
 //延時加載數據 要等編輯器加載成功,反正我不延時的時候沒有成功。 
 setTimeout(function () { 
    ue.setContent (allData) 
 }, 500);  
 
 //離開頁面或者刷新頁面觸發(fā)方法 
  window.onbeforeunload = function() { 
    localStorage.setItem("ueditor_content", JSON.stringify(ue.getContent())); 
  }  
 
}) 

6.添加音樂

添加音樂好坑啊,


這是什么鬼,我要的是這樣的效果好么。


要不然你就這樣也好


有會的老司機請指導指導!

7.解決圖片過大超出編輯器

有時候圖片寬度超出了編輯器的寬度,我們會想讓他等比縮放

在配置里面找了下,沒找到這個配置。不過編輯器提供了一個iframe.css讓我們寫自己的配置


我們可以在里面設置:

img { 
 max-width: 100%; /*圖片自適應寬度*/ 
}  
  

這樣圖片再怎么拉伸寬度都超不過邊界。別看很簡單,但是花了不少時間研究。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • nodejs服務內存泄露排查過程和優(yōu)化方法

    nodejs服務內存泄露排查過程和優(yōu)化方法

    在開發(fā)和部署Node.js應用程序時,內存泄露是一個常見的挑戰(zhàn),本文將探討如何對于一個陌生項目進行內存排查和優(yōu)化的方法,文章通過圖文介紹的非常詳細,需要的朋友可以參考下
    2023-11-11
  • 學習使用grunt來打包JavaScript和CSS程序的教程

    學習使用grunt來打包JavaScript和CSS程序的教程

    這篇文章主要介紹了學習使用grunt來打包JavaScript和CSS程序的教程,grunt基于node.js和需要的朋友可以參考下
    2016-01-01
  • npm?install安裝報錯:gyp?info?it?worked?if?it?ends?with?ok的解決方法

    npm?install安裝報錯:gyp?info?it?worked?if?it?ends?with?

    今天新啟動一個項目,在 npm install 安裝依賴項時出現報錯,所以下面這篇文章主要給大家介紹了關于npm?install安裝報錯:gyp?info?it?worked?if?it?ends?with?ok的解決方法,需要的朋友可以參考下
    2022-07-07
  • Nodejs中的計時器(setTimeout?setIntervals?etImmediate)使用案例解析

    Nodejs中的計時器(setTimeout?setIntervals?etImmediate)使用案例解析

    這篇文章主要介紹了Nodejs中的計時器(setTimeout?setIntervals?etImmediate)使用案例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-06-06
  • Node.js?中?fs?模塊的高級用法實例詳解

    Node.js?中?fs?模塊的高級用法實例詳解

    文章介紹了Node.js中fs模塊的高級用法,包括流式讀寫、文件監(jiān)視、PromiseAPI、遞歸目錄操作等,這些功能有助于更好地處理復雜文件操作場景,提升代碼性能和可維護性,感興趣的朋友跟隨小編一起看看吧
    2025-02-02
  • nodejs?express路由匹配控制及Router模塊化使用詳解

    nodejs?express路由匹配控制及Router模塊化使用詳解

    這篇文章主要為大家介紹了nodejs?express路由匹配控制及Router模塊化使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-10-10
  • 阿里云OSS實踐文件直傳基于服務端

    阿里云OSS實踐文件直傳基于服務端

    這篇文章主要為大家介紹了阿里云OSS實踐文件直傳基于服務端實現示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-06-06
  • Node.js進行文件讀取與復制的系統(tǒng)總結

    Node.js進行文件讀取與復制的系統(tǒng)總結

    這篇文章主要為大家詳細介紹了Node.js中文件讀取與復制相關內容的系統(tǒng)總結,包括 同步讀取,異步讀取,復制操作等,有需要的小伙伴可以跟隨小編一起了解下
    2025-04-04
  • nodejs中使用worker_threads來創(chuàng)建新的線程的方法

    nodejs中使用worker_threads來創(chuàng)建新的線程的方法

    這篇文章主要介紹了nodejs中使用worker_threads來創(chuàng)建新的線程的方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-01-01
  • Node.js中console.log()輸出彩色字體的方法示例

    Node.js中console.log()輸出彩色字體的方法示例

    這篇文章主要給大家介紹了關于Node.js中console.log()輸出彩色字體的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用Node.js具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-12-12

最新評論

达日县| 尚志市| 镇坪县| 靖州| 彩票| 喀喇沁旗| 陆川县| 苍梧县| 四会市| 台东市| 玉门市| 沈丘县| 高邑县| 中方县| 葫芦岛市| 海淀区| 巴青县| 衡阳县| 沙雅县| 宜君县| 高密市| 新乡县| 南充市| 师宗县| 淄博市| 东兴市| 佛山市| 永平县| 理塘县| 古蔺县| 邢台市| 莱芜市| 岳阳市| 慈溪市| 江油市| 漳浦县| 呼图壁县| 兴和县| 大理市| 和龙市| 奎屯市|