Динамическая маршрутизация в Javascript - Node.js
Так что в PHP вы можете сделать динамическую маршрутизацию, как
class Route
{
public function homePage ()
{
echo 'You are on the home page'
}
public function otherPage ()
{
echo 'You are on some other page'
}
}
class Route2
{
public function homePage ()
{
echo 'You are on the home page'
}
public function otherPage ()
{
echo 'You are on some other page'
}
}
// when you get the url like www.domain/route/other-page, with some regex operation you get out as string 'route' and 'other-page' from the route transform it to 'Route' and 'ohterPage' and fill them into the $controller and action variables and you just call:
$controller->$action();
// and it will call Route->otherPage() which will serve up the requested template
когда вы получаете URL-адрес, такой как www.domain / route / other-page, с помощью некоторой операции регулярного выражения вы получаете в виде строки 'route' и 'other-page' из маршрута преобразование его в 'Route' и 'ohterPage' и заполняете их в переменные $controller и $action, и вы просто вызываете '$controller->$action();' и он вызовет Route->otherPage(), который будет обслуживать запрошенный шаблон
это изящное решение, потому что тогда, когда у вас есть, скажем, 40 различных действий, таких как обслуживание шаблонов и различные запросы на получение и публикацию, вы можете обработать его, добавив всего 5 маршрутов, но для этого вам нужно динамически ссылаться на объект и метод, как описано выше.... Есть ли способ достичь этого в JavaScript?
Спасибо
1 ответ
Используйте Express Js для этого:
var express = require('express')
var app = express()
// respond with "hello world" when a GET request is made to the homepage
app.get('/', function (req, res) {
res.send('hello world')
})