0

我有一些关于 React Native Web 的问题。我还没有真正了解它是如何工作的,所以我希望能得到一些答案。

  • 确切地说,当我们将 React Native “别名”为 Web 时会发生什么?
  • 与 Expo 合作时,为什么某些软件包不可用?例如,LinearGradient 得到一个错误,指出它无法找到。
  • 我想使用Netlify Identity Widget,但它呈现在 HTML 中。我如何将它与 React Native Web 一起使用?

那么总的来说,我如何在 React Native Web 中进行开发呢?我需要知道如何移植 npm 包以便我可以使用它们。

非常感谢您的任何建议!

4

1 回答 1

1

确切地说,当我们将 React Native “别名”为 Web 时会发生什么?

这意味着库react-native-web会将 react-native 组件转换为 HTML/CSS 标签。

这里有一个例子:

<View> <Text style={{color: 'red'}}>I'm an awesome text</Text> </View>

在浏览器上渲染时会变成:

<div> <span style="color: red">I'm an awesome text</span> </div>

与 Expo 合作时,为什么某些软件包不可用?例如,LinearGradient 得到一个错误,指出它无法找到。

Expo 提供了一种非常简单的方式来开始开发 React Native 应用程序。但这是一个封闭的盒子,你不能添加社区原生包,只能添加 Expo 附带的原生包。有一个例外,只有 js 的包,比如:https ://github.com/crazycodeboy/react-native-check-box

对于原生包,您需要将它们链接到应用程序的原生端并进行编译。为了实现这一点,我建议你从原生开发开始,你可以在这里找到路径:https ://facebook.github.io/react-native/docs/getting-started#the-react-native-cli

我想使用 Netlify Identity Widget,但它以 HTML 呈现。我如何将它与 React Native Web 一起使用?

您可以使用任何呈现 HTML 的包/小部件/库,因为您将在浏览器上运行它。您只需键入yarn add netlify-identity-widgetnpm install netlify-identity-widget --save进入您的 react-native-web 根文件夹即可开始使用它。

希望我有所帮助!

于 2019-08-29T00:25:00.353 回答