将电容器 3 与 Nuxtjs SSR 结合使用

2024-01-30

我使用 Nuxtjs 2.15.4 ssr 模式,我想将 Capacitorjs 3 添加到我的项目中。当我阅读文档时,我发现webDir我们应该添加dist创建的目录npm run generate适用于静态模式target: static not npm run build(对于 ssr 应用程序)。

那么为SSR Nuxt配置电容器的正确方法是什么?


定义服务器 URL

我有一个 SSR 模式下的 Nuxt 应用程序,带有 CapacitorJS。最终,经过相关步骤后,它在我的 Android Studio 模拟器和我的物理 Pixel 2 上成功运行(手动 apk 安装)。我还没有在生产环境或 iOS XCode 中进行全面测试。

定义服务器 URL 就是诀窍。最初我正在与webdir和其他人一样,尽管如果使用server: {url: }财产。

电容器.config.json:

{
    "appId": "io.mysillyapp.app",
    "appName": "My Silly App",
    "server": {
        "url": "https://mysillyapp.myapphosting.io"
    },
    "linuxAndroidStudioPath": "/snap/bin/android-studio"
}

可以选择包裹在一个条件中,像这样(link https://github.com/ionic-team/capacitor/discussions/3217#discussioncomment-34696):

{
  ...
  server: process.env.HOST ? { url: `${process.env.HOST}:${process.env.PORT ?? 8100 }` : undefined
  ...
}

运行后npx cap copy,你会看到一个警告:

 Web asset directory specified by webDir does not exist. This is not an error because server.url is set in config.

如果您关心此警告并认为您需要它,请定义webDir;我有它指向.nuxt:

{
    ...
    "webDir": ".nuxt",
    ...
}

NOTES:

电容器文档server url https://capacitorjs.com/docs/v3/config says “这不适用于生产”无需额外解释。这是什么意思,我不知道。我的第一个想法是他们在这里很保守,假设苹果可能不喜欢这样的应用程序提交(从高层来看,苹果想要真正的应用程序,而不是网站包装的应用程序)。

不过,评论者似乎成功使用server url生产中 https://github.com/ionic-team/capacitor/discussions/1478#discussioncomment-1344330,已通过应用商店提交。

https://capacitorjs.com/docs/v3/config https://capacitorjs.com/docs/v3/config

  /**
     * Load an external URL in the Web View.
     *
     * This is intended for use with live-reload servers.
     *
     * **This is not intended for use in production.**
     *
     * @since 1.0.0
     */
    url?: string;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将电容器 3 与 Nuxtjs SSR 结合使用 的相关文章

随机推荐

  • 关于 Nix 包管理的 Nix 表达式是什么?

    即使在阅读了 Nix 手册之后 仍然对 Nix 表达式的真正含义感到困惑 有时它们被称为派生 但存储派生也有其他含义 在尼克斯 一个尼克斯表达只是您可以用 Nix 语言编写的任何类型值的通用术语 Nix 表达式可以是集合 列表 数字 字符串
  • 如何将 Google Plus 与 iPhone sdk 集成?

    我想将 google plus 集成到我的应用程序中 但我不知道从哪里开始 所以如果有人对此有任何想法 请回复我 以此为基础 gt https developers google com api https developers googl
  • 如何从 ORMLite 的 sqlite 数据库生成 java 类代码

    给定一个 sqlite 数据库作为输入 我想知道如何生成一个ORMLite http ormlite com 与关联数据库映射的java类 非常感谢 你可以尝试Telosys 工具 一个用于代码生成的 Eclipse 插件从现有数据库工作具
  • 文件上传大文件 PHP/AJAX [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • Github API - 检索用户提交?

    我正在尝试构建一种方法 在该方法中我可以访问 Github 用户名 并发布该用户的所有提交或至少一些提交 是否有调用 GET user repo commit 关联或直接用户 提交 现在 我认为需要采取以下措施 获取与特定名称关联的存储库
  • Option 类型的类型转换

    我是 Python 的 Rust 新手 我相信这是一个基本问题 但我太新了 无法通过诸如类型转换选项 在Python中 让类型检查器知道返回类型不是Optional int int 我们可以解决assert强制类型检查器知道的逻辑x永远不会
  • 在python中分配列表中的每个第N个元素

    我想将列表中的每个第 N 个元素设置为其他值 Like 这个问题 https stackoverflow com questions 14994140 how do you make every other integer in an ar
  • C语言中指针可以指向自身内存地址吗?

    在下面的代码中 一个指针指向它自己的内存地址 include
  • Hibernate:多对多连接表的标准?

    考虑以下两个关系 Entity class Foo Id id ManyToMany JoinTable name ATag joinColumns JoinColumn name foo id inverseJoinColumns Joi
  • Python 中 import 和 __import__ 的区别

    我正在查看项目的一些提交 我在文件中看到以下更改 import dataFile dataFile import dataFile 编码器被替换import dataFile by dataFile import dataFile 它们之间
  • 谷歌云存储坏了? [关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 今天我不断得到 The request s content type is not accepted on this URL 对于
  • 将图像放置在右上角 - CSS

    我需要在 div 的右上角显示图像 该图像是 对角线 功能区 但将当前文本保留在内部 div 中 就像粘在其顶部一样 我尝试了不同的方法 例如将图像包含在另一个 div 中或定义其类 例如 ribbon position relative
  • Postgres数据库如果不存在则创建[重复]

    这个问题在这里已经有答案了 有没有类似的CREATE TABLE IF NOT EXISTS用于创建数据库 背景 我正在编写一个脚本来在未知系统上自动设置 PostgreSQL 中的架构 我不确定数据库 甚至是架构的一部分 是否已经部署 因
  • 如何在 Erlang/OTP 中将 datetime() 转换为 timestamp()?

    我需要转换 2012 9 21 13 21 11 into timestamp 我怎样才能做到这一点 更正版本 Seconds calendar datetime to gregorian seconds DateTime 62167219
  • 具有相同名称的函数声明内的函数声明 javascript

    我刚刚在 javascript 中看到了这种模式 var test function function test args this properties args etc test prototype methodName functio
  • 为什么我无法实例化从匿名对象推断类型的泛型类?

    假设我有一些课程 假设的例子 public class InvalidResponseException
  • java中的并发和并行有区别吗?

    我一直在谷歌进行一些研究 但无法完全理解 java 中并发程序和并行程序之间的差异 如果有的话 我查看过的一些信息表明两者之间没有区别 是这样的吗 这取决于谁来定义它 Go 编程语言的创造者并发调用代码 http rspace google
  • 通过链接或后退按钮打开时强制 JSF 刷新页面/视图/表单

    我有一个 JSF 页面 它将数据发布到外部页面 数据从 JSF 托管 Bean 加载 该 Bean 在发布数据中生成唯一的 ID 我遇到一个问题 用户单击结帐按钮 然后导航回同一页面并再次按结帐按钮 帖子数据尚未更新 而且 根本没有调用该
  • Grails 应用程序和版本控制

    将 Grails 应用程序置于版本控制之下时应排除哪些目录 文件 我不希望我的项目在 SVN 中携带非源文件或工件 这是我的 gitignore 它可能包含很多垃圾 idea stacktrace log test reports etc
  • 将电容器 3 与 Nuxtjs SSR 结合使用

    我使用 Nuxtjs 2 15 4 ssr 模式 我想将 Capacitorjs 3 添加到我的项目中 当我阅读文档时 我发现webDir我们应该添加dist创建的目录npm run generate适用于静态模式target static