简单页面应用程序路由到相同视图或控制器 SailsJS

2023-12-01

如何将多个 url 路由到同一控制器或视图以使用 Angular 单页应用程序?

我可以做到这一点,但我觉得很丑..

'/': {
    view: 'homepage'
},
'/login': {
    view: 'homepage'
},
'/register': {
    view: 'homepage'
},
'/troller': {
    view: 'homepage'
}, 
............

我想要类似的东西

['/','/login','/register','/troller'] -> view: 'homepage'

还有一个问题,我可以使用正则表达式进行路由吗?

谢谢!!对不起我的英语。


您当前无法使用真正的正则表达式进行路由。但是,您可以使用通配符路由来执行您想要的操作(在一个视图中瞄准多个路由)。

把这个放在你的最后/config/routes.js object:

'/*': function(req, res, next) {
         if (req.path.match(/\..*/g)) {
            return next();
         } else {
            return res.view('homepage');
         }
      }

与上面的路由之一不匹配的所有内容都将执行该函数。该函数首先检查您是否正在尝试访问静态资源(带有文件扩展名的内容,例如.js or .css),如果是,则继续匹配路由,以便 Express 静态中间件可以服务该文件。否则,它将服务于您的视图。

Update

从 Sails v0.10.0-rc5 开始,正则表达式可用于定义路由。从the docs:

正则表达式路由的语法是:

"r|<regular expression string>|<comma-delimited list of param names>"

就是那封信“r",后跟一个管道、一个不带分隔符的正则表达式字符串、另一个管道以及应映射到正则表达式中带括号的组的参数名称列表。例如:

"r|^/\d+/(\w+)/(\w+)$|foo,bar": "MessageController.myaction"

将匹配/123/abc/def,运行myaction的行动MessageController并提供值abc and def as req.param('foo') and req.param('bar'), 分别。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

简单页面应用程序路由到相同视图或控制器 SailsJS 的相关文章

随机推荐

  • 如何从 kdeplot 获取半高全宽 (FWHM)

    我在一些数据上使用了seaborn的kdeplot import seaborn as sns import numpy as np sns kdeplot np random rand 100 是否可以从创建的曲线返回 fwhm 如果不是
  • 教义 FindBy 方法与“OR 条件”?

    是否可以使用OR教义中的声明findBy method 我希望输出是这样的 SELECT FROM friends WHERE userId 1 OR FriendId 1 现在的代码 user repository gt findBy a
  • tf.where 的 TensorFlow 梯度在不应该返回 NaN 时返回 NaN

    下面是可重现的代码 如果运行它 您将看到在第一次 sess 运行中 结果为 nan 而第二种情况给出了正确的梯度值 0 5 但根据指定的 tf where 和条件 它们应该返回相同的值 我也根本不明白为什么 tf where 函数梯度在 1
  • 显示日志文件更新时的内容

    我有外部程序 例如 ffmpeg 和 gstreamer 在后台运行并写入日志文件 我想用我的 Flask 应用程序显示此日志的内容 以便用户可以观看日志更新 例如tail f job log会在终端做 我尝试使用指向日志文件 但未能显示数
  • pyspark中的DataFilter是什么?

    我看到一个叫做DataFilter在我的查询执行计划中 FileScan parquet product id 12 price 14 Batched true DataFilters isnotnull product id 12 For
  • 计时器:如何在后台保持计时器处于活动状态

    在我的 iPhone 定时器应用程序中 其中计时器应在后台运行 所以 我已经在 appdelegate 中设置了通知 它工作得很好 这样我就可以从视图控制器调用方法 这使得计时器处于活动状态 看一些代码 应用程序委托 void applic
  • h2混合模式连接问题

    我在 servlet 上下文侦听器中启动 h2 数据库 public void contextInitialized ServletContextEvent sce org h2 Driver load String apprealPath
  • 如何使用 proguard 获取发布构建 apk 文件

    我正在尝试使用ProGuard为了为我的项目制作发布 apk 文件 显然我正在使用许多第三方库 我只需要使用其中的几个类 我真的很想得到一些关于此的解释 我的调试版本超过20 MB 所以我想通过使用来减少它shrinking用于progua
  • NDB 查询 fetch() 和 ContextOptions

    我想仅在我的一个查询中禁用上下文缓存 我想我可以这样做 MyModel query ancestor user key fetch 100 options ContextOptions use cache False use memcach
  • HTML5 的 History.js - 需要进行黑客攻击才能不破坏 IE7

    我的目标是仅支持 HTML5 浏览器的 AJAX 历史记录 但是 我希望我的网站能够使用 HTML4 浏览器 但没有 AJAX 历史记录 许多 History js 示例在执行任何操作之前都包含以下检查 if History enabled
  • mailto链接多条正文线

    无法在 mailto 链接中使多行正常工作 就我而言 我正在使用 Outlook 默认邮件阅读器对其进行测试 以下内容放入锚点 href 中 mailto email protected subject test body type 20y
  • 如何防止 XmlSerialzer 转义“嵌套 XML”?

    我正在使用 XmlSerializer 来序列化 反序列化复杂对象 一个属性包含一个 XML 字符串 应将其写入字符串属性而不进行反序列化 示例 可在 LinqPad 中执行 XmlRoot RootObject Serializable
  • 从日期时间获取日期名称

    如何从 Python 中的日期时间对象获取日期名称 例如星期一 星期二 星期三 星期四 星期五 星期六和星期日 所以 举例来说 datetime 2019 9 6 11 33 0 应该给我 Friday import datetime no
  • 覆盖单个文件的编译标志

    我想使用一组全局标志来编译项目 这意味着我在顶级 CMakeLists txt 文件中指定了 ADD DEFINITIONS Wall Weffc pedantic std c 0x 但是 对于子目录中的特定文件 假设为 foo cpp 我
  • 用于重复数据删除的 Kafka 压缩

    我试图了解 Kafka 压缩的工作原理 并有以下问题 kafka 是否保证启用压缩的主题中存储的消息的键的唯一性 Thanks 简短的回答是否定的 Kafka 不保证启用主题保留时存储的密钥的唯一性 在 Kafka 中有两种类型cleanu
  • 如何在android中的fragment中添加选项卡?

    我尝试在片段内添加选项卡 我可以添加 但特定选项卡的内容与选项卡重叠 MainFragmentActivity java public class MainActivity extends FragmentActivity Override
  • 这是什么网页效果

    当你在堆栈溢出时达到 1000 声望时 你将获得一张消耗性用户卡 当您将鼠标悬停在卡片上时 我怎样才能重现这种效果 怎么称呼 我的猜测是它是一个 Jquery 方法 但如果是的话 有人可以指出我正确的方向 因为我寻找它但无法准确得到我需要的
  • 从 Android 中的 url 加载图像,仅当图像很小时

    我在用着BitmapFactory decodeStream从 Android 中的 url 加载图像 我只想下载低于特定尺寸的图像 我目前正在使用getContentLength检查这个 然而 我被告知getContentLength并不
  • java.lang.IllegalArgumentException:未知实体

    我有一个试驾 package com chinalbs service RunWith SpringJUnit4ClassRunner class ContextConfiguration locations classpath appli
  • 简单页面应用程序路由到相同视图或控制器 SailsJS

    如何将多个 url 路由到同一控制器或视图以使用 Angular 单页应用程序 我可以做到这一点 但我觉得很丑 view homepage login view homepage register view homepage troller