使用react-native-web实现组件

K. *_* D. 7 reactjs react-native

我使用react-native-web来获得不仅可以用于移动设备而且可以用于Web浏览器的组件.我对这个想法的理解很简单:为常规的react-native组件提供基于HTML的实现.

如果我理解库是正确的,它的工作原理是用webpack覆盖包:

// webpack.config.js

module.exports = {
    ...
    resolve: {
        alias: {
            'react-native': 'react-native-web'
        }
    }
};
Run Code Online (Sandbox Code Playgroud)

但是,如果我想为react-native-web未实现的组件提供实现呢?我怎样才能为react-native-button等外部包提供实现.

小智 0

像这样的包react-native-button只是使用 React Native 的 API 的代码集合。如果您react-native-web作为原始实现的替代品加载,第三方包可能“正常工作”。它的工作效果如何取决于react-native-webAPI 的实现有多完整。

请注意,某些第三方 React Native 包包含react-native-web不旨在实现的特定非 Javascript 代码(iOS/Android 本机代码)。如果包文档说明您需要运行react-native link或更改 Xcode/Android Studio 项目配置,则它可能无法轻松地与react-native-web.