首页 > 解决方案 > 如何在 Atlaskit 中指定自定义媒体客户端,尤其是 @atlaskit/editor-core

问题描述

我正在尝试在我自己的项目中使用@atlaskit/editor-core,并希望指定我自己的 Fileserver/MediaClient。Atlassian 确实提供了一个功能,我可以在其中模拟客户端,而不是真正模拟它以这种方式注入我自己的客户端......但这真的是最好的选择吗?

由于@atlaskit/editor-core 上的文档相当小,我不知道该去哪里找...

到目前为止的发现:使用以下行可以启用模拟。

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,
      }}
    />
  );
};


任何链接、方向、建议或起点将不胜感激!!

标签: reactjstypescriptprose-mirroratlaskit

解决方案



推荐阅读