粘贴为纯文本在角度7的ckeditor 5中不起作用

时间:2019-07-17 09:42:00

标签: angular ckeditor5

我已将CKEditor 5用于我的社交网站。我曾尝试实现一个插件,即“粘贴为纯文本(https://ckeditor.com/cke4/addon/pastetext)”,但此插件无法正常工作。 每当有人粘贴我的编辑器时,链接就会消失。我想像记事本一样以纯文本形式发短信。

您的帮助将不胜感激.. !!

            <script>
                    ClassicEditor
                        .create( document.querySelector( '#editor' ), {
                            toolbar: [ 'heading', '|', 'bold', 'italic', 'bulletedList', 'numberedList', 'blockQuote', 'undo', 'redo' ]
                        } )
                        .then( editor => {
                            window.editor = editor;
                            const clipboard = editor.plugins.get( 'Clipboard' );

                            editor.listenTo( editor.editing.view.document, 'clipboardInput', ( evt, data ) => {
                                console.log( '----- clipboardInput .listenTo' );
                                //console.log( 'text/html: ', data.dataTransfer.getData( 'text/html' ) );
                                console.log( 'text/plain: ', data.dataTransfer.getData( 'text/plain' ) );

                                data.dataTransfer.setData( 'text/plain', '<p>Replaced!</p>' );

                                //console.log( 'text/html: ', data.dataTransfer.getData( 'text/html' ) );
                                console.log( 'text/plain: ', data.dataTransfer.getData( 'text/plain' ) );
                            }, { priority: 'high' } );

                            editor.editing.view.document.on( 'clipboardInput', ( evt, data ) => {
                                console.log( '----- clipboardInput .on' );
                                //console.log( 'text/html: ', data.dataTransfer.getData( 'text/html' ) );
                                console.log( 'text/plain: ', data.dataTransfer.getData( 'text/plain' ) );

                                data.dataTransfer.setData( 'text/plain', '<p>Replaced!</p>' );

                                //console.log( 'text/html: ', data.dataTransfer.getData( 'text/html' ) );
                                console.log( 'text/plain: ', data.dataTransfer.getData( 'text/plain' ) );
                            } );

                            clipboard.on( 'inputTransformation', ( evt, data ) => {
                                console.log( '----- inputTransformation' );
                                console.log( 'data', data );
                                console.log( 'data.content', data.content );
                          } );
                        } )
                        .catch( err => {
                            console.error( err.stack );
                        } );
            </script>

0 个答案:

没有答案