问题标签 [hypernova]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
609 浏览

node.js - airbnb的hypernova工具可以用于angularjs web seo吗?

现在 Airbnb 有一个工具Hypernova用于 javascript 视图的服务器端渲染。我想知道它是否可以用于增强基于 Ajax 的网站的 SEO,例如使用Prerender的工具。如果不是那为什么?

0 投票
2 回答
403 浏览

javascript - React/Hypernova - 缺少事件处理程序

我正在使用 React 和hypernova(带有php 绑定)来执行一些 React 组件的服务器端渲染。以下是我的以下测试组件和超新星的响应。

测试.js

超新星反应

如上图,props都被成功传递了,但是onClickhandler却无处可寻。但是,它肯定存在于转译的代码中。

捆绑.js

我能在这个问题上找到的唯一东西是在github 问题跟踪器中,有人在其中抱怨同样的事情,但显然<p>标签上不应该有事件处理程序;它应该存在于 React 交付的代码中。我还尝试使用带/不带箭头符号的类属性分配单击处理程序(在后一种情况下显式绑定在构造函数中)。我在捆绑的 React 代码中添加了一个<script>标签,但这似乎没有什么不同。

这是一个错误,还是我做错了什么?

0 投票
0 回答
84 浏览

typescript - 在 NodeJS 中为具有不同签名的函数编写类型

我想为hypernova-react编写一些类型,但不幸的是它在客户端和服务器上有不同的类型签名。对于客户端,类型为:

在服务器上时

我该如何处理?我在 typescript 文档中看不到任何用于检查是否window在类型保护中定义的内容。

0 投票
1 回答
247 浏览

hypernova - 有没有办法让客户端脚本也从 Ara 框架中的代理/集群服务自动加载?

首先是一个伟大的基于 SSR 的 MFE 框架。我正在尝试 Ara / Svelte (Micro App1) / Vue (Micro App 2) / Nuxt JS (Appshell),如https://ara-framework.github.io/website/blog/2019/08/27/中所述nuxt-js以及按照文档https://ara-framework.github.io/website/docs/nova-cluster中的描述设置集群和代理

在 Nuxt 应用程序的应用程序外壳中,我需要包含这样的客户端脚本

有没有更好的方法来发现和加载这个脚本,类似于服务器端部分由代理和集群服务器处理?当前方法的问题是我需要事先知道 nova 服务器客户端脚本的部署位置。

0 投票
1 回答
665 浏览

vue.js - 有没有办法将 Hypenova 与 Nuxt 和 VueJs 一起使用并制作 SSR?

我尝试使用Ara Framework来实现微前端。我选择Nuxt 框架作为我的主要应用程序,它“连接”了我的微前端。微前端是用 VueJs 框架实现的

这是我的一个微前端(在 VueJs 中),它实现了一个非常简单的组件:

简历Fournisseur.vue:

这里是我的 index.js 文件:

然后在我的 Nuxt 应用程序中:

它工作得很好。

但是当我尝试将Nova Cluster聚合器与Nova Proxy结合使用时,我不知道如何在不使用 http://localhost:3001/public/client.js 的情况下在我的 Nuxt 应用程序中呈现我的 micro-fontend。这是我的views.json文件:

这里是我的 nova-proxy.json 文件:

(记住,Nuxt 在 3000 端口上运行)。我运行ara run cluster --config ./views.json(如文档所述)。然后我跑

因为我在 Windows 环境中,所以我做了一组。当我在新星集群上发帖时:

它做出了很好的反应。非常好 !!但是 nova 代理没有做任何事情:(。文档说如果它绑定到 nova 集群(感谢 HYPERNOVA_BATCH 变量),它将能够渲染由 nova 集群渲染的视图。

当然,如果我将集群响应嵌入到 v-html 指令中(在我的 NuxtJs 主应用程序中),则微前端被嵌入但不做任何事情(非交互式)。

我错过了什么吗?我阅读了很多关于这个主题的文档,我怀疑我的选择/理解。

如果有人可以帮助我,那真的很棒:) !!!