解決summernote打開本地文件夾慢的問題

開發(fā)項(xiàng)目時(shí),遇到summernote,打開本地文件夾時(shí),非常的慢,以下是解決辦法:

找到summernote.min.js

accept="image/*"

替換為:

accept="image/jpg,image/jpeg,image/webp,image/png,image/svg,image/gif"
修改位置部分

如果不行,請(qǐng)清除一下瀏覽器緩存

以下是實(shí)際開發(fā)效果圖

項(xiàng)目效果圖

----------------------------------------------我是分割線------------------------------------------

附summernote+springboot整合代碼:
html需要引入(這個(gè)就自己下載喏)

    <link href="../../css/plugins/summernote/summernote.css" rel="stylesheet" />
    <link href="../../css/plugins/summernote/summernote-bs3.css" rel="stylesheet" />
    <script src="../../js/plugins/summernote/summernote.min.js" type="text/javascript"></script>
    <script src="../../js/plugins/summernote/summernote-zh-CN.js" type="text/javascript"></script>

內(nèi)容區(qū)(我相信css樣式難不倒聰明的你)

<div class="wrapper wrapper-content">
    <div class="row">
        <div class="col-sm-12" style="width:550px">
            <div class="ibox float-e-margins">
                <div class="ibox-title">
                    <h1>公司簡介</h1>
                    <button id="cancel" class="btn btn-warning btn-xs m-l-sm" onclick="cancelEdit()" type="button">放棄本次編輯</button>
                    <button id="edit" class="btn btn-primary btn-xs" onclick="profileEdit()" type="button">編輯</button>
                    <button id="save" class="btn btn-primary  btn-xs" onclick="profileSave()" type="button">保存</button>
                </div>
                <div class="ibox-content no-padding" id="eg">
                    <div id="summernote">
                        <h3>親愛的用戶,您好:</h3>
                        <br/>
                        <p>&nbsp;&nbsp;&nbsp;&nbsp;開始編輯您的內(nèi)容吧.</p>
                        <br/>
                    </div>
                </div>
            </div>
        </div>
    </div>
</div>

相關(guān)js函數(shù)(提示彈出框用的是 sweetAlert,自行百度)

$(document).ready(function() {
    $('#summernote').summernote({
        lang: 'zh-CN', // default: 'en-US'
        focus:true,
        onImageUpload: function(files, editor, welEditable) {
            sendFile(files[0],editor,welEditable);
        }
    });
});

function sendFile(file, editor, welEditable){
    var filename = false;
    try {
        filename = file['name'];
    } catch (e) {
        filename = false;
    }
    if (!filename) {
        $(".note-alarm").remove();
    }
    //以上防止在圖片在編輯器內(nèi)拖拽引發(fā)第二次上傳導(dǎo)致的提示錯(cuò)誤
    var ext = filename.substr(filename.lastIndexOf("."));
    ext = ext.toUpperCase();
    var timestamp = new Date().getTime();
    var name = timestamp+"_"+$("#summernote").attr('aid')+ext;
    //name是文件名硬贯,自己隨意定義席吴,aid是我自己增加的屬性用于區(qū)分文件用戶
    data = new FormData();
    data.append("file", file);

    $.ajax({
        data: data,
        type: "POST",
        url: "/logistics/common/picSave", //圖片上傳出來的url伦腐,返回的是圖片上傳后的路徑,http格式
        cache: false,
        contentType: false,
        processData: false,
        success: function(url) {
            //data是返回的hash,key之類的值暇赤,key是定義的文件名,把圖片放到編輯框中
            editor.insertImage(welEditable, url);
//            $('#summernote').summernote('insertImage', url); //這種方式有問題
        },
        error: function(){
            swal({
                type:"warning",
                title:"",
                text: "上傳失敗",
                confirmButtonText: '知道的啦'
            });
        }
    });
}

//編輯, 初始化組件, 加上圖片上傳初始化
function profileEdit(){
    $("#eg").addClass("no-padding");
    $('#summernote').summernote({
        lang: 'zh-CN', // default: 'en-US'
        focus:true,
        onImageUpload: function(files, editor, welEditable) {
            sendFile(files[0],editor,welEditable);
        }
    });
}

//保存, 銷毀組件
function profileSave(){
    data = new FormData();
    $("#eg").removeClass("no-padding");
    var aHTML = $('#summernote').code();//獲取內(nèi)容
    data.append("content", aHTML);
    $('#summernote').destroy(); //銷毀
    $.ajax({
        data: data,
        type: "POST",
        url: "/company/picSave", //圖片上傳出來的url,返回的是圖片上傳后的路徑灯谣,http格式
        cache: false,
        contentType: false,
        processData: false,
        success: function(res) {
            if (res.code === "0"){
                swal({
                    type:"success",
                    title:"",
                    text: res.msg,
                    confirmButtonText: '那必須的'
                });
            } else {
                swal({
                    type:"warning",
                    title:"",
                    text: "啊哦,保存失敗",
                    confirmButtonText: '朕知道了'
                });
            }

        }
    });
}

//取消, 銷毀組件
function cancelEdit(){
    $("#eg").removeClass("no-padding");
    $('#summernote').destroy(); //銷毀
    self.location.reload(); //取消時(shí)重新刷新界面
}

springboot后臺(tái)參考代碼(如果有需要對(duì)圖片進(jìn)行壓縮或者加水印需求的同學(xué)請(qǐng)自行百度哦):
類上的注釋使用:@RestController

 /**
     * @param file
     * @return
     * @throws IOException
     */
    @RequestMapping(value = "/common/picSave", produces = "text/html;charset=UTF-8", method = RequestMethod.POST)
    @ResponseBody
    public String commonPicSave(@RequestParam("file") MultipartFile file) throws IOException {
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy_MM");
        String file_name = sdf.format(new Date());
        String fileName;
        String suffixName;
        OutputStream out = null;
        InputStream in = null;
        String _path = "";
        String path = "c:\\myPath"+ file_name + "/";
        if (!file.isEmpty()) {
            fileName = file.getOriginalFilename();
            suffixName = fileName.substring(fileName.lastIndexOf("."));
            fileName = UUID.randomUUID() + "_" + new Random().nextInt(10000) + suffixName; //重新命名
            // 檢測是否存在目錄
            String filePath = path + fileName;
            File dest = new File(filePath);
            if (!dest.getParentFile().exists()) {
                dest.getParentFile().mkdirs();
            }
            out = new FileOutputStream(new File(path, fileName));
            in = file.getInputStream();
            int length;
            byte[] buf = new byte[1024];
            while ((length = in.read(buf)) != -1) {
                out.write(buf, 0, length);
            }
            in.close();
            out.close();
            _path = type + "/" + file_name + "/" + fileName;
            ShiroUtils.setSessionAttribute(type, "/" + _path); // 將圖片放到session中
            System.out.println("/" + _path);
        }
        return baseUrl + _path;
    }

開發(fā)中遇到的問題,分享一下,如果對(duì)您有幫助,那便是最好;如果有錯(cuò),還望多多指出

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末胞谭,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子符衔,更是在濱河造成了極大的恐慌找前,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,042評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件判族,死亡現(xiàn)場離奇詭異躺盛,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)形帮,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,996評(píng)論 2 384
  • 文/潘曉璐 我一進(jìn)店門槽惫,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人辩撑,你說我怎么就攤上這事界斜。” “怎么了合冀?”我有些...
    開封第一講書人閱讀 156,674評(píng)論 0 345
  • 文/不壞的土叔 我叫張陵各薇,是天一觀的道長。 經(jīng)常有香客問我君躺,道長峭判,這世上最難降的妖魔是什么开缎? 我笑而不...
    開封第一講書人閱讀 56,340評(píng)論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮林螃,結(jié)果婚禮上奕删,老公的妹妹穿的比我還像新娘。我一直安慰自己疗认,他們只是感情好急侥,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,404評(píng)論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著侮邀,像睡著了一般。 火紅的嫁衣襯著肌膚如雪贝润。 梳的紋絲不亂的頭發(fā)上绊茧,一...
    開封第一講書人閱讀 49,749評(píng)論 1 289
  • 那天,我揣著相機(jī)與錄音打掘,去河邊找鬼华畏。 笑死,一個(gè)胖子當(dāng)著我的面吹牛尊蚁,可吹牛的內(nèi)容都是我干的亡笑。 我是一名探鬼主播,決...
    沈念sama閱讀 38,902評(píng)論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼横朋,長吁一口氣:“原來是場噩夢啊……” “哼仑乌!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起琴锭,我...
    開封第一講書人閱讀 37,662評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤晰甚,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后决帖,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體厕九,經(jīng)...
    沈念sama閱讀 44,110評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,451評(píng)論 2 325
  • 正文 我和宋清朗相戀三年地回,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了扁远。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,577評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡刻像,死狀恐怖畅买,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情细睡,我是刑警寧澤皮获,帶...
    沈念sama閱讀 34,258評(píng)論 4 328
  • 正文 年R本政府宣布,位于F島的核電站纹冤,受9級(jí)特大地震影響洒宝,放射性物質(zhì)發(fā)生泄漏购公。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,848評(píng)論 3 312
  • 文/蒙蒙 一雁歌、第九天 我趴在偏房一處隱蔽的房頂上張望宏浩。 院中可真熱鬧,春花似錦靠瞎、人聲如沸比庄。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,726評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽佳窑。三九已至,卻和暖如春父能,著一層夾襖步出監(jiān)牢的瞬間神凑,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,952評(píng)論 1 264
  • 我被黑心中介騙來泰國打工何吝, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留溉委,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,271評(píng)論 2 360
  • 正文 我出身青樓爱榕,卻偏偏與公主長得像瓣喊,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子黔酥,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,452評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容

  • 繼上篇文章:Spring-Boot入門之環(huán)境搭建藻三。這次我們整合SpringBoot-Mybatis實(shí)現(xiàn)簡單的CRU...
    TyCoding閱讀 9,176評(píng)論 3 60
  • 本文詳細(xì)鏈接 歡迎大家來我的小站 安裝過程步驟: 1.安裝PHP 2.安裝MySQL 3.配置防火墻firewal...
    O0RCA閱讀 470評(píng)論 0 0
  • 昨天公司發(fā)生了一個(gè)黑天鵝事件。從前一天晚上群里看到小伙伴發(fā)的一個(gè)新聞跪者,當(dāng)時(shí)還不以為然趴酣,以為也沒什么。這兩天鋪天蓋地...
    玉露君閱讀 747評(píng)論 0 11
  • 原來巴赫這么美坑夯。這么久岖寞,有巴赫陪著,才沒有焦急柜蜈。 剛再問仗谆,自己到底要什么。對(duì)要健康身心厚度淑履,然后呢隶垮? 然后肯定還是...
    樂樂樂樂書閱讀 179評(píng)論 0 0
  • 什么是最好的年紀(jì)? 有人說是學(xué)生時(shí)代蹋偏。有人說剛畢業(yè)開始奮斗便斥。有人說三十而立,成熟穩(wěn)重威始,知道要什么枢纠。 當(dāng)下即最好的年...
    韓小Jing閱讀 173評(píng)論 0 0