我正在嘗試使用summernote來允許用戶編輯電子郵件模板。我想讓他們能夠插入模板/標記項目,例如{{name}}。理想情況下,我希望它能夠在編輯所述模板時點亮這些內容以向他們展示他們的模板。Summernote token template插入和hilighting?
代碼示例:
$('summernote').summernote({
height: 225,
callbacks: {
onBlur: function(contents, $editable) {
var rx = /{([^}]+)}/;
var instance = new Mark("div.panel-body");
var regex = new RegExp(rx, 'g');
instance.markRegExp(regex);
},
},
hint: {
mentions: ['name', 'test'],
match: /\B{{(\w*)$/,
search: function (keyword, callback) {
callback($.grep(this.mentions, function (item) {
return item.indexOf(keyword) == 0;
}));
},
content: function (item) {
return '{{' + item + '}}';
}
}
});
- 我使用mark.js標記與模板匹配的正則表達式是在模糊的項目
- Mark.js添加自己的標記,然後被拉進保存的數據summernote('code')
- 必須有一個更簡單的方法/更好的解決方案,唯一的方法就是在保存之前去掉所有mark.js標記在數據庫中,我寧願不必做(想保持UI的東西隔離)
在思考這個實施寫summernote一個基於插件的關閉的是這樣的:https://github.com/Nanakii/summernote-plugins/blob/master/plugin/template/summernote-ext-template.js,然後剝離出特殊標籤時節省好像我最好的選擇功能,但是,如果有人這樣做,或這已經存在,我寧願不重新發明輪子。
tldr
- 是否有插件summernote允許模板\令牌插入和高亮顯示了?
- 有沒有一種方法來標記內容,而不添加標籤,當我呼叫summernote.code時得到保存?