CKEDITOR 5でツールバーを設定したかったので、ドキュメントを確認しました。
それでも、私の質問に関連する唯一のスクリプトは次のとおりです。
Array.from( editor.ui.componentFactory.names );
フロントエンドのプログラマが理解するのは非常に困難です。このスクリプトはどこに配置しますか?結果を出力するにはどうすればよいですか?詳細なチュートリアルはありますか?
事実、CKEDITORが利用可能なアイテムをドキュメントに単純に入れるといいでしょう。それは地獄のトラブルの多くを救います。
ありがとう!
このコードは、コードサンプルの本体に直接配置できます。 in CKEditor 5 Buildの基本APIガイド 。例えば:
ClassicEditor
.create( document.querySelector( '#editor' ) )
.then( editor => {
console.log( Array.from( editor.ui.componentFactory.names() ) );
} )
.catch( error => {
console.error( error );
} );
@Szymon Cofalikが答えで述べたように、すべてのビルドで利用可能なボタンの単一のリストはありません。 CKEditor 5ビルドは視覚的に異なるだけでなく、異なるプラグイン、したがって異なるボタンが含まれている場合があります。したがって、そのコードスニペットを使用することは、最も安全で将来性のあるソリューションです。
使用可能なツールバーをリストするために使用できるサンプルコード
var editor = ClassicEditor
.create(document.querySelector('#editor'), {
toolbar: ['headings', 'bold', 'italic', 'link', 'bulletedList', 'numberedList'],
heading: {
options: [
{modelElement: 'paragraph', title: 'Paragraph', class: 'ck-heading_paragraph'},
{modelElement: 'heading1', viewElement: 'h1', title: 'Heading 1', class: 'ck-heading_heading1'},
{modelElement: 'heading2', viewElement: 'h2', title: 'Heading 2', class: 'ck-heading_heading2'},
{modelElement: 'heading', viewElement: 'h3', title: 'Heading 3', class: 'ck-heading_heading3'}
]
}
})
.then(function (editor) {
console.log(Array.from(editor.ui.componentFactory.names()));
});
以下の理由により、プラグイン名をドキュメント内の1か所に保持することは困難です。
現在使用しているビルドで使用可能なツールバー項目を確認するには、使用しているブラウザーで開発者コンソールを開き、引用符で囲まれたコード行を実行します
Array.from( editor.ui.componentFactory.names );
もちろん、editor
はエディターインスタンスでなければなりません。
これがあなたの質問に答えることを願っています。
編集:エディターの作成 ドキュメントに記載されています も。ただし、エディターインスタンスをeditor
変数に割り当てる必要があります。
例えば:
ClassicEditor
.create( document.querySelector( '#editor' ) )
.then( editor => {
window.editor = editor;
// Or alternatively you could paste that line here and look at console.
} );
以下を提供するconsole.log( Array.from( editor.ui.componentFactory.names() ) );
を使用できます。
["undo", "redo", "bold", "italic", "blockQuote", "ckfinder", "imageTextAlternative", "imageUpload", "heading", "imageStyle:full", "imageStyle:side", "link", "numberedList", "bulletedList", "mediaEmbed", "insertTable", "tableColumn", "tableRow", "mergeTableCells"]