【问题标题】:React native WebView: dynamically loading static assetsReact Native WebView:动态加载静态资源
【发布时间】:2021-04-12 14:56:42
【问题描述】:

我正在尝试在 WebView 中动态加载文件。我可以使用 ajax 调用从服务器获取,但无法弄清楚如果资源位于 assets 文件夹中,我将如何加载它们。

详情: 我正在使用以下方法从本地文件系统加载三个 js 场景:

 <WebView source={{ uri: "file:///android_asset/test.html" }} />

我的资产文件夹中可能有 10 个本地模型,并且希望在用户选择特定模型时加载它。这将如何使用三个 js 加载器来完成?如果加载器无法使用,是否可以手动获取模型并将其传递给加载器?

基本上可以让webview在react-native中访问本地文件系统吗?

【问题讨论】:

    标签: ajax react-native webview three.js


    【解决方案1】:

    试试这样的

    const localHtmls = [require('../htmls/test.html'),
      require('../htmls/test2.html'), ...];
    
    // Do your logic here to find the index
    let theHtml = localHtmls[0];
    
    <WebView
      source={theHtml}
      style={{flex: 1}}
    />
    

    确保require中的路径正确。

    【讨论】:

    • 一旦在那个网页视图中,我如何获取本地资源?我可以用 js 加载一个基本的 html 页面,但是我有十个文件并且想在用户选择该文件时加载其中一个?
    • 我编辑了答案,现在提供了多个 html 文件。
    • 我有 10 个 20 MB 的模型,但不想前置加载它们。无论如何可以从 web 视图中访问本地文件系统吗?有点像 ajax 调用,但要“file:///” 用户是否可以在 webview 中与 android OS 文件系统进行交互
    猜你喜欢
    • 2020-09-10
    • 2015-12-12
    • 2018-08-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-18
    • 1970-01-01
    相关资源
    最近更新 更多