0

我正在尝试将 Facebook Messenger 中的发送按钮作为原生 UI 组件导出为原生 UI 组件。我没有收到任何错误,但我也没有看到按钮。

我对此的参考是: https ://facebook.github.io/react-native/docs/native-components-ios.html和https://developers.facebook.com/docs/messenger/ios#messenger_buttons

这是我到目前为止所拥有的:

RCTFBMessengerButtonManager.m

#import "RCTViewManager.h"
#import <FBSDKMessengerShareKit/FBSDKMessengerShareKit.h>

@interface RCTFBMessengerButtonManager : RCTViewManager
@end


@implementation RCTFBMessengerButtonManager

RCT_EXPORT_MODULE()

- (UIView *)view
{
  return [FBSDKMessengerShareButton rectangularButtonWithStyle:FBSDKMessengerShareButtonStyleBlue];
}

@end

FBMessengerButton.js 是我获得 Native 组件的地方:

var { requireNativeComponent } = require('react-native');

module.exports = requireNativeComponent('RCTFBMessengerButton', null);

和我实现 FBMesssengerButton 组件的发送组件:

'use strict';

var React = require('react-native');

var {
    View,
} = React;


var FBMessengerButton = require('../Components/FBMessengerButton');

class Send extends React.Component{

    constructor(props){
        super(props);
    }


    render() {
        return (
            <View>
                <FBMessengerButton />
            </View>
        );
    }
}

module.exports = Send;
4

1 回答 1

2

问题不在于 FB Messenger 没有出现,而是按钮的背景和大小没有通过 React Native。通过在组件上设置宽度、高度和背景颜色<FBMessenger>,按钮就可以了。

下一个问题与我也解决的按钮上的绑定事件有关。

我把我的解决方案变成了一个 npm 包,可以在这里找到:https ://github.com/1985media/react-native-facebook-messenger

于 2015-11-09T23:52:53.370 回答