繁体   English   中英

在UIManager中找不到React Native PDF视图“ PDFView”

[英]React Native PDF View “PDFView” was not found in the UIManager

我正在尝试在我的本机项目中从URL打开PDF。

我创建了一个打开的报告文件:

import React, { Component } from 'react';
import PDFView from 'react-native-view-pdf';

class OpenBGReport extends Component {
  render() {
    return (
      <PDFView
        style={{ flex: 1 }}
        onError={(error) => console.log('onError', error)}
        onLoad={() => console.log('PDF rendered from url')}
        resource="http://www.pdf995.com/samples/pdf.pdf"
        resourceType="url"
      />
    );
  }
}

export default OpenBGReport;

但是,我遇到了错误: Invariant Violation: Invariant Violation: requireNativeComponent: "PDFView" was not found in the UIManager.

我已经尝试过运行npm link react-native-pdf-view但仍然是相同的错误。

如何在React Native中从URL打开PDF?

谢谢

这是您手动链接到iOS的方式:

cd ios/ && pod deintegrate

然后将以下内容添加到您的Podfile

pod 'RNPDF', :path => '../node_modules/react-native-view-pdf'

然后运行pod install

这是您手动链接Android的方式:

  1. 转到您的MainApplication.java并将以下内容添加到文件顶部:

    import com.rumax.reactnative.pdfviewer.PDFViewPackage;

然后在它下面:

@Override
    protected List<ReactPackage> getPackages() {
      @SuppressWarnings("UnnecessaryLocalVariable")
      List<ReactPackage> packages = new PackageList(this).getPackages();
      // Packages that cannot be autolinked yet can be added manually here, for example:
      // packages.add(new MyReactNativePackage());
      packages.add(new PDFViewPackage());
      return packages;
    }
  1. android/settings.gradle ,添加:
    include ':react-native-view-pdf'
    project(':react-native-view-pdf').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-view-pdf/android')
  1. android/app/build.gradle ,添加:

    implementation project(':react-native-view-pdf')

请记住,您只在执行上述操作,因为您说的是RN 0.59.8,因此无需进行RN 60ish之后的操作,因为所有内容现在都已自动关联。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM