uni-app【建议】希望純nvue下uni_modules插件里的webview src可以访问插件里static或hybrid目录

uni-app【建议】希望純nvue下uni_modules插件里的webview src可以访问插件里static或hybrid目录

开发环境 版本号 项目创建方式
Windows win10 HBuilderX

产品分类:
uniapp/小程序/微信

HBuilderX类型:
正式

HBuilderX版本号:
3.4.7

第三方开发者工具版本号:
nightly 1.05.2105272

基础库版本号:
2.2.4


操作步骤:

预期结果:

实际结果:

可以訪問

bug描述:

希望純nvue下uni_modules插件里的webview src可以访问插件里static或hybrid目录,因为nvue没有canvas,使用webview时如果每次更新插件都让用户移动目录非常麻烦。 例如:

<web-view src="./uni_modules/lime-echart/static/index.html"/>

更多关于uni-app【建议】希望純nvue下uni_modules插件里的webview src可以访问插件里static或hybrid目录的实战教程也可以访问 https://www.itying.com/category-93-b0.html

1 回复

更多关于uni-app【建议】希望純nvue下uni_modules插件里的webview src可以访问插件里static或hybrid目录的实战教程也可以访问 https://www.itying.com/category-93-b0.html


uni-app 中,nvue 页面是基于原生渲染的,与传统的 vue 页面有所不同。目前,uni_modules 插件系统中的 webview 组件在 nvue 页面中确实存在一些限制,特别是对于访问插件内的静态资源(如 statichybrid 目录)时可能会遇到问题。

问题背景

uni_modules 插件中,statichybrid 目录通常用于存放静态资源文件。然而,在 nvue 页面中,webview 组件的 src 属性可能无法直接访问这些目录中的资源,导致开发者无法直接在 webview 中加载插件内的静态页面或资源。

建议解决方案

为了在 nvue 页面中实现 webview 组件访问 uni_modules 插件内的 statichybrid 目录,可以考虑以下解决方案:

  1. 使用相对路径或绝对路径

    • 确保 webviewsrc 属性使用正确的相对路径或绝对路径来访问插件内的静态资源。例如:
      <webview src="/static/your-page.html"></webview>
      
    • 如果插件内的资源路径较为复杂,可以尝试使用绝对路径来确保正确加载。
  2. 动态生成资源路径

    • nvue 页面中,可以通过 JavaScript 动态生成 webviewsrc 属性,确保路径正确。例如:
      const staticPath = '/static/your-page.html';
      this.webviewSrc = staticPath;
      
      <webview :src="webviewSrc"></webview>
      
  3. 使用 uni.getFileSystemManager()

    • 通过 uni.getFileSystemManager() API 获取插件内的静态资源路径,并将其传递给 webview 组件。例如:
      const fs = uni.getFileSystemManager();
      const filePath = fs.readFileSync('/static/your-page.html');
      this.webviewSrc = filePath;
      
      <webview :src="webviewSrc"></webview>
回到顶部