首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用wp媒体上传自由的反应组件?

如何使用wp媒体上传自由的反应组件?
EN

WordPress Development用户
提问于 2020-06-04 10:17:05
回答 1查看 2K关注 0票数 0

我正在使用创建-反应-应用程序来编写一个反应插件的wordpress。我想添加一个按钮在插件管理设置页面上传图像。我跟踪这位医生,但什么也没有呈现。

代码语言:javascript
复制
https://github.com/WordPress/gutenberg/tree/master/packages/block-editor/src/components/media-upload

我的代码:

代码语言:javascript
复制
...
import { Button } from '@wordpress/components';
import { MediaUpload, MediaUploadCheck } from '@wordpress/block-editor';

const ALLOWED_MEDIA_TYPES = [ 'image' ];

const MyMediaUploader = () => {
    return (
        <MediaUploadCheck>
            <MediaUpload
                onSelect={ ( media ) => console.log( 'selected ' + media.length ) }
                allowedTypes={ ALLOWED_MEDIA_TYPES }
                value=""
                render={ ( { open } ) => (
                    <Button onClick={ open }>
                        Open Media Library
                    </Button>
                ) }
            />
        </MediaUploadCheck>
    );
}

export default function settingsPage(){
    return(
        <MyMediaUploader/> 
    )
}
EN

回答 1

WordPress Development用户

发布于 2021-01-27 17:36:35

这是我的解决办法

代码语言:javascript
复制
import React, { useState, useEffect } from 'react'
import _ from 'lodash'
export default function FeaturedImage(props) {
_.noConflict()
let frame
const runUploader = (event) => {
    event.preventDefault()

    // If the media frame already exists, reopen it.
    if (frame) {
        frame.open()
        return
    }

    // Create a new media frame
    frame = wp.media({
        title: 'Select or Upload Media Of Your Chosen Persuasion',
        button: {
            text: 'Use this media',
        },
        multiple: false, // Set to true to allow multiple files to be selected
    })

    // Finally, open the modal on click
    frame.open()
}
return (
    <React.Fragment>
        <button type='button' onClick={runUploader}>
            Open Uploader
        </button>
    </React.Fragment>
)

}

票数 1
EN
页面原文内容由WordPress Development提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://wordpress.stackexchange.com/questions/368238

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档