@gdjiami/jslib
Version:
Jiami FrontEnd helpers and Services
50 lines (49 loc) • 1.13 kB
JavaScript
/**
* 字符串操作相关函数
*/
var _MATCH_HTML = /[&<>'"]/g;
var _ENCODE_HTML_RULES = {
'&': '&',
'<': '<',
'>': '>',
'"': '"',
"'": ''',
};
function encode_char(c) {
return _ENCODE_HTML_RULES[c] || c;
}
/**
* 转译HTML,将string中的 "&", "<", ">", '"', "'" 进行转义,注入html中
*
* @param markup html 字符串
*
* @returns 转义后的字符串
*
* @example
*
* ```js
* escapeHTML('<div>123</div>') // => '<div>123</div>'
* ```
*/
export function escapeHTML(markup) {
return markup == null ? '' : String(markup).replace(_MATCH_HTML, encode_char);
}
/**
* 获取本地图片文件的预览地址
*
* @param file 图片文件
*
* @example
*
* ```
* setupLocalPreviewUrl(file) // => 'blob:https://localhost:8080/1fac6c73-4fb8-48fd-84d0-bac9e109564f'
* ```
*/
export function setupLocalPreviewUrl(file) {
// @ts-ignore
if (window.createObjectURL != null) {
// @ts-ignore
return window.createObjectURL(file);
}
return URL.createObjectURL(file);
}