问题标签 [html5mode]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 添加 office.js 在 url 中添加 #,然后将其删除
我有一个平均堆栈网站。最初,views/index.html
(have <ui-view></ui-view>
) 是所有页面的入口点。它使用angular-ui-router
和html5mode
。因此,https://localhost:3000/XXXX
在浏览器中将保持不变(而不是添加#
)并根据路由器显示相应的内容。
然后,我希望服务器也提供 Office 加载项。我将需要views/addin.html
该 containsoffice.js
和另一个路由器,以便该站点提供一组 urls https://localhost:3000/addin/XXXX
,我不介意它是否html5mode
存在(一个 url 可以包含#
某处)。
所以这里是对应的routes/index.js
:
这是views/addin.html
:
什么时候office.js
评论如上,https://localhost:3000/addin/new
并且https://localhost:3000/addin/home
在浏览器中运行良好。但是,当office.js
取消注释时,会出现一个奇怪的行为:https://localhost:3000/addin/new
在浏览器中输入会变成https://localhost:3000/#/addin/new
,然后又变成https://localhost:3000/addin/new
. 我们会看到addin content new page
出现一次然后消失。
取消注释后,如果我们使用office.js
加载清单文件<SourceLocation DefaultValue="https://localhost:3000/addin/new"/>
,我们也会在任务窗格addin content new page
中看到出现一次然后消失,然后Add-in Error Something went wrong and we couldn't start this add-in. Please try again later or contact your system administrator.
没有html5mode
这里,.../addin/new
或者.../addin/home
在浏览器中只会显示addin content
;加载项可以加载,也只能加载addin content
。
我的目标是制作一个指向.../addin/new
或.../addin/home
工作的加载项。office.js
必须在某处加载。我不介意它是否是html5mode
(即,url 有#
),但无论哪种方式的行为都是奇怪的或不令人满意的。有谁知道如何修复它或有解决方法?
javascript - 路由不适用于 HTML5-History-API
在平均堆栈 Web 应用程序中,我使用html5mode
并具有以下代码index.html
:
我已经定义了以下 angular-ui-router:
然后,我去https://localhost:3000/addin/test
,点击one
将我带到https://localhost:3000/addin/test#%2Faddin%2Fhome
,而我想去https://localhost:3000/addin/home
。
如果我没有office.js
and history.js
,点击one
确实会引导我到https://localhost:3000/addin/home
.
有谁知道如何去https://localhost:3000/addin/home
同时保持office.js
和history.js
?
javascript - AngularJS $routeProvider 没有正确路由
所以我是 Angular 的新手,并试图弄清楚多条路由如何导致相同的 view/templateUrl 和控制器。这是我写的:
问题:目前,如果我转到“localhost:9000/”,它会显示正确的版本,但如果我转到“localhost:9000/rika”,它会给我“无法获取 /rika”。
调试:我已将问题范围缩小到 html5Mode。我正在尝试摆脱 #! Angular 会自动添加到 URL 中,但是当我这样做时,会弹出错误。
感谢任何人的投入!
angularjs - 将所有 AWS S3 http 请求重定向到 AngularJS HTML5Mode 的 index.html
如何将所有请求重定向到我的静态 AWS S3 网站到 index.html,以便我可以使用 AngularJS 的 HTML5 模式?
我最近了解到(令我欣喜若狂)可以通过使用HTML5 Mode#
来使用 AngularJS 而不在 URL 中。但是,我从这个答案中知道这需要在服务器上进行一些设置,因为所有请求都必须重定向到正确的 html 文件(在本例中为 )才能正常工作。index.html
我为我的网站使用 AWS S3 的静态网站托管。我尝试将此添加到我的重定向规则中:
和
但我遇到了太多重定向的问题。
有没有办法通过静态网站托管在 AWS S3 中进行必要的重定向?
javascript - 刷新页面后如何防止重新加载整个ng-admin
我遇到了刷新页面的问题。示例:基本应用程序打开并且 url 是localhost:8000/dashboard
,然后我从菜单或其他任何地方转到用户选项卡,并且 url 是localhost:8000/users/list
。如果我在用户上刷新页面,那么它将再次进入仪表板重新加载整个页面。
后端正在正确处理它,当我创建自定义状态并且没有将“ng-admin”指定为父级时,它会停留在刚刚刷新的位置,但是当我将父级添加到状态时,它会再次重新加载整个应用程序。还启用了 html5mode。
实体添加为 ng-admin 文档指定:
下一个代码块
从仪表板转到用户时,它会提供输出:
并在刷新
任何想法表示赞赏。
url - Passportjs 重定向在 URL 中添加主题标签
我的平均堆栈网站上有一个登录页面。该网站使用html5mode
,并有<base href="/1/" />
。登录使用Passport.js
,例如:
对于 Twitter、GitHub 和 Linkedin,它都重定向到https://localhost:3000/1/dashboard
. 但是,Google 重定向到https://localhost:3000/1/dashboard#
,Facebook 重定向到https://localhost:3000/1/dashboard#_=_
.
有谁知道发生了什么?
javascript - Angular html5Mode + ng-include 中断导航
我正在尝试在启用$locationProvider.html5Mode的情况下使用角度,并且它工作正常,除非我在页面中的某处 使用ng-include 。
在 Chrome、Safari 和 Firefox 上测试
你可以在这里找到问题的最小游乐场: codepen bug demo
有什么线索吗?
angularjs - 打开带有片段的链接
以前,我html5mode
在我的平均堆栈网站中使用过,现在由于某些原因我想禁用它,所以我$locationProvider.html5Mode(true)
在我的代码中注释并仍然保留<base href="/1/" />
在index.html
.
结果,https://localhost:3000/1/#/home
在浏览器中工作。
但是,单击由以下 html 定义的按钮会导致https://localhost:3000/1/edit/
,而不是https://localhost:3000/1/#/edit/
。
有谁知道如何修改 html 以使其打开https://localhost:3000/1/#/edit/
?
javascript - 在 angularjs 中启用 html5 模式时会发生什么?
当您启用 html5 模式时实际发生了什么?这可能会回到单页应用程序中路由是如何发生的这一点
我之前的看法(可能是错误的):查看 angularjs 应用程序中的脏 url,我一直认为它是 url 片段,不同的视图绑定到不同的片段。所以简而言之,我们已经拥有所有页面,并且正在为特定 url 显示特定片段。
现在,为了删除散列,您必须将 html5mode 设置为 true,并且您必须告诉服务器为除您的 apis 之外的每个请求返回索引页面。有点像
每次 url 更改时,请求不应该转到服务器并重新加载页面吗?
html5mode 对浏览器有什么作用?在像 react 和 angular(2 or greater) 这样的较新框架中,您甚至不必启用 html5mode(除非在 angular 2 中,您必须告诉您想要什么样的 url)。
这是什么法术?
angularjs - AngularJS关于带有html5mode页面刷新错误的页面
我正在使用 w3schools 路由示例来制作一个简单的网站。我的项目文件夹是wamp/www/angular/7
和base href="/angular/7/"
. 但是当我在angular/7/red
页面刷新时刷新页面时显示未找到。请建议或纠正我的错误,以下是代码。
页面是 index.html、red.html、green.html、blue.html、main.html
.ht 访问代码