我是 Nuxt 和 Vue 的新手,所以不要介意。我正在尝试使用vue3-video-player在我的 Nuxt 3 应用程序中创建一个视频播放器组件,但它似乎不支持 SSR,因为当我将其导入到视频组件中时出现以下错误:
ReferenceError: navigator is not defined
即使组件用<ClientOnly>. 因此,根据我在Nuxt 3 文档plugins/vue3-video-player.client.js中看到的内容,我想我应该创建一个仅包含以下内容的客户端插件:
import Vue3VideoPlayer from '@cloudgeek/vue3-video-player'
export default defineNuxtPlugin((nuxtApp) => {
nuxtApp.vueApp.use(Vue3VideoPlayer)
})
Run Code Online (Sandbox Code Playgroud)
但是当我尝试在我的组件中使用它时<vue3-video-player>,出现以下错误:
[Vue warn]: Failed to resolve component: vue3-video-player
所以我想我的问题是如何使用 Nuxt 3 插件创建仅客户端的 Vue 组件?或者是否有一种完全不同的方法效果更好?
我正在编写一些代码,这些代码采用外部库返回的结构,将其序列化为 json,并使用pbjson. 外部库使用 serde 和 Implements Serialize,但返回的 json 是蛇形格式。问题是pbjson期望 json 是驼峰式的。
如何获取 serde json 对象的驼峰版本?(即配置外部库以使用类似的东西#[serde(rename_all = "camelCase")]或将 json 键转换为驼峰式?)
注意:我正在处理许多远程结构,总共有近 2k 行代码。如果可能的话,我想避免在本地重新创建这些类型。