diff --git a/src/core/view/components/editor/formats/image.js b/src/core/view/components/editor/formats/image.js new file mode 100644 index 0000000000000000000000000000000000000000..92adcde215ffd60d9c92f1c5496e3bb7c1e9dbbb --- /dev/null +++ b/src/core/view/components/editor/formats/image.js @@ -0,0 +1,4 @@ +export default function (Quill) { + const Image = Quill.import('formats/image') + Image.sanitize = url => url +} diff --git a/src/core/view/components/editor/formats/index.js b/src/core/view/components/editor/formats/index.js index 02225304b16d07fdff8625131a7cf391339d37c5..f9dcad8c3679280dafd7521b8b3fa1aa6c2b51d9 100644 --- a/src/core/view/components/editor/formats/index.js +++ b/src/core/view/components/editor/formats/index.js @@ -7,6 +7,7 @@ import background from './background' import box from './box' import font from './font' import text from './text' +import image from './image' export function register (Quill) { const formats = { @@ -18,7 +19,8 @@ export function register (Quill) { background, box, font, - text + text, + image } const options = {} Object.values(formats).forEach(value => Object.assign(options, value(Quill))) diff --git a/src/core/view/components/editor/index.vue b/src/core/view/components/editor/index.vue index b352be04e02e588fc87baee733bbc65c922ed689..fa6b9a32b9ff6743700080301666db36db2560ef 100644 --- a/src/core/view/components/editor/index.vue +++ b/src/core/view/components/editor/index.vue @@ -142,7 +142,7 @@ export default { case 'insertImage': range = quill.getSelection(true) const { src = '', alt = '', data = {} } = options - quill.insertEmbed(range.index, 'image', src, Quill.sources.USER) + quill.insertEmbed(range.index, 'image', this.$getRealPath(src), Quill.sources.USER) quill.formatText(range.index, 1, 'alt', alt) quill.formatText(range.index, 1, 'data-custom', Object.keys(data).map(key => `${key}=${data[key]}`).join('&')) quill.setSelection(range.index + 1, Quill.sources.SILENT)