我有一个单页面应用程序(MySPA) . MySPA作为独立应用程序加载,或作为另一个基于iframe的SPA的一部分加载,其中MySPA加载在iframe中 .

当作为独立加载时,网址看起来像http://..../mySPA#home

当作为另一个SPA的一部分加载时,该网址看起来像http://..../foo/mySPA#home

我面临的挑战是...... MySPA中的链接有他们的href =“#dashboard”或href =“#listView” . 当我点击这些链接时,他们会在两种环境中做正确的事情 . 但是,当用户右键单击并“在新标签页中打开”或命令单击时,将打开一个新选项卡,iframe上下文将丢失,MySPA将以独立模式运行 .

我想知道这周围是否有任何模式以及解决这个问题最简洁的方法是什么 .

BASE HREF解决方案不起作用,因为在这种情况下链接必须是动态的(打开内联的不同href和新选项卡中打开的不同href) .