我试图在我自己的项目中使用@atlaskit/editor-core,并想指定我自己的Fileserver/MediaClient。Atlassian确实提供了一个函数,我可以在其中模拟客户端,而不是真正地模拟它,以这种方式注入我自己的客户端……但这真的是最好的选择吗?
由于@atlaskit/editor-core的文档相当小,我不知道还能去哪里看…
目前发现:使用下面的代码行可以启用mock。
import { mediaMock } from '@atlaskit/media-test-helpers'
mediaMock.enable()
最小的例子:
import React from 'react';
import { MediaProvider } from '@atlaskit/editor-common';
import { Editor } from '@atlaskit/editor-core';
import { MediaClientConfig } from '@atlaskit/media-core';
import { mediaMock, mediaPickerAuthProvider } from '@atlaskit/media-test-helpers';
mediaMock.enable();
// Crreating basic MediaProvider
const collection = 'sample-collection';
const mediaClientConfig: MediaClientConfig = {
authProvider: mediaPickerAuthProvider(),
};
const mediaProvider = Promise.resolve<MediaProvider>({
uploadParams: { collection },
viewMediaClientConfig: mediaClientConfig,
uploadMediaClientConfig: mediaClientConfig,
});
export const EditorMinimal = () => {
return (
<Editor
appearance="full-page"
media={{
provider: mediaProvider,
allowResizing: true,
allowMediaSingle: true,
useMediaPickerPopup: false,
allowDropzoneDropLine: true,
isCopyPasteEnabled: true,
}}
/>
);
};
任何链接,方向,建议或起点将不胜感激!!
用自己的答案解决了这个问题https://community.developer.atlassian.com/t/atlaskit-editor-core-custom-file-endpoint-file-upload-service/45558