微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

CKEditor 5:如何向上/向下转换非元素文本字符串?

如何解决CKEditor 5:如何向上/向下转换非元素文本字符串?

假设有以下输入:

<p>This is a string that contains a <span class="token">[some_token]</span>.</p>

这可以轻松升级为模型:

const conversion = this.editor.conversion;
    conversion.for( 'upcast' ).elementtoElement( {
        view: {
            name: 'span',classes: [ 'token' ]
        },model: ( viewElement,{ writer: modelWriter } ) => {
            const name = viewElement.getChild( 0 ).data.slice( 1,-1 );

            return modelWriter.createElement( 'token',{ name } );
        }
    } );

然后向下转换为小部件:

conversion.for( 'editingDowncast' ).elementtoElement( {
        model: 'token',view: ( modelItem,{ writer: viewWriter } ) => {
            const widgetElement = createtokenViewElement( modelItem,viewWriter );
            viewWriter.addClass('token',widgetElement);
            return toWidget( widgetElement,viewWriter );
        }
    } );

但是,假设您不想将 [some_token] 包装在 <span> 元素中...

鉴于此输入:

<p>This is a string that contains a [some_token].</p>

如果没有将 [some_token] 包裹在一个跨度中,如何类似地向上和向下转换?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。