UI5路由实现:Express.js与UI5路由功能

UI5路由实现:Express.js与UI5路由功能,express,routes,sapui5,url-routing,single-page-application,Express,Routes,Sapui5,Url Routing,Single Page Application,在一个通用的单页应用程序SPA中,我将使用Express.js实现一个路由逻辑。但我应该在SAPUI5环境中使用什么方法呢?我应该依赖SAPUI5的路由模块,还是用Express.js实现这样的功能?我认为您有点混淆了路由概念。让我们试着澄清一下 Express是用于构建HTTP接口的服务器端Node.js库。在此上下文中,路由指的是根据URL模式将传入请求与处理程序函数相匹配。然后,处理函数必须根据传入的请求状态、头、正文等生成HTTP响应。这类似于Spring@RequestMapping、

在一个通用的单页应用程序SPA中,我将使用Express.js实现一个路由逻辑。但我应该在SAPUI5环境中使用什么方法呢?我应该依赖SAPUI5的路由模块,还是用Express.js实现这样的功能?

我认为您有点混淆了路由概念。让我们试着澄清一下

Express是用于构建HTTP接口的服务器端Node.js库。在此上下文中,路由指的是根据URL模式将传入请求与处理程序函数相匹配。然后,处理函数必须根据传入的请求状态、头、正文等生成HTTP响应。这类似于Spring@RequestMapping、JAX-RS@Path、Rails路由等

//快线 //此函数将处理/URL上的所有GET请求 //这反过来又会发送回一个纯文本Hello world!回答 app.get'/',req,res=>res.send'Hello World!' 上述代码的匹配请求示例:GEThttp://localhost:3000/.

UI5是一个用于构建客户端单页应用程序的框架。正如您所提到的,它有一个内置的基于散列的路由器。在这种情况下,路由意味着将浏览器的当前位置与SPA内的视图相匹配。通常但并非总是如此,这是通过哈希完成的,就像UI5一样,即通过URL符号后的部分完成的。之所以使用此选项,是因为仅影响哈希的URL更改不会导致浏览器加载新页面。这反过来确保JavaScript上下文不会被破坏并重新创建,并且之前加载的资源仍然可以访问。这类似于React路由器、角度路由器、mithril路由等

//UI5路由器配置 //它首先定义视图在sap.ui.demo.nav.view包中的位置 //以及应在应用程序控件的页面内呈现视图的位置 //最后,它定义了一个路由,该路由将应用程序中的/home URL与 //主视图。 路由:{ 配置:{ routerClass:sap.m.routing.Router, viewType:XML, 视图路径:sap.ui.demo.nav.view, controlId:app, 控制聚合:页面 }, 路线:[{ 模式:/home, 姓名:appHome, 目标:家 }], 目标:{ 主页:{ viewId:home, 视图名称:主页 } } } 上述配置的匹配位置示例:http://localhost:3000/index.html/home.

本质上,如果您想使用Node.js后端构建UI5应用程序,您很可能会同时使用以下两种方法:

快速路由用于构建服务器端REST API。 处理用户界面内导航的UI5路由。 希望这能提供一些清晰的信息

后来编辑:我遗漏了一件事。这可能会使水变得更加浑浊,但在UI5的背景下,无论如何也不容易做到