nodejs和angular度路由之间可能的冲突
首先,我有很多使用HTML / CSS和浏览器Javascript(包括AngularJS)的经验,
现在我开始使用NodeJS和Angular(2)。
现在我要发誓 ,不可能省略哈希字符(或任何类似的字符)从客户端路由,因为(我认为)它总是会去服务器路由在这种情况下。
例如:我有一个nodejs express应用程序,它在发送GET /
然后有一个(客户端)Angular应用程序,它有自己的路由没有哈希字符。 因此,例如,当我从客户端应用程序访问/myroute
时,它将使用Angular路由来确定应呈现给用户的视图模板。
我不明白 为什么不去服务器确定路线? 另外,如果我直接在浏览器中inputURL(包括/myroute
),它仍然使用Angular进行路由。
当我将服务器端路由添加到/myroute
时会发生什么?
我很困惑。
首先是一个基本的答案。 如果这是我们正在寻找的,我将编辑它以使其更好:
你点击里面的应用程序,然后使用locationProvider和HTML5历史APIangular度接pipe导航尝试,并在内部使用Angular路由器
直接使用地址栏浏览意味着浏览器直接从服务器获取页面,angular度不能覆盖。 所以,解决scheme是简单的URL重写。 如果在你的情况下它的节点,你会做一些像app.all()
redirect所有请求回你的angular度应用程序所在的索引文件。 然后,客户端路由器从那里接pipe。
是的,如果两个点都存在相同的路由,则需要在服务器上创build一个逻辑来决定是否将控制权恢复为angular度。 简单的解决scheme,我使用的是,所有的服务器路由以/api
开头,所以除了/api/*
路由都重新回到angular度的起点。