gpt4 book ai didi

Ember.js、EmberCLI - 从 URL 中删除哈希 (#)

转载 作者:行者123 更新时间:2023-12-04 01:59:21 24 4
gpt4 key购买 nike

所以根据Ember's documentation Ember 默认使用 hashchange事件。这就是为什么我们喜欢 #/some/url设置。我们也可以设置为使用浏览器的history API。

我注意到 Built with Ember 上列出的大多数(如果不是全部)网站显然使用历史API。这是有道理的,因为它使 URL 看起来更自然。

这就是说我(有点)理解 # 的位置、方式和原因得到附加。

我的问题专门与 EmberCLI 相关。我注意到,当我创建一个简单的应用程序时,#不在网址中。那是因为我还没有部署它吗?还是 CLI 默认使用历史 API?如果是这样,这个集合在哪里?我找不到一个实例

App.Router.reopen({
location: 'history'
});

最佳答案

我点击的第一个使用了哈希历史;)https://fnd.io/

默认情况下,Ember 使用哈希更改事件,主要是由于跨浏览器兼容性。 http://caniuse.com/history

在 ember-cli 中它使用 auto默认情况下。 http://emberjs.com/api/classes/Ember.Location.html#toc_autolocation

如果您查看 router.js你会注意到

var Router = Ember.Router.extend({
location: YourAppENV.locationType
});

config/environment.js 中提取其设置
module.exports = function(environment) {
var ENV = {
baseURL: '/',
locationType: 'auto',
EmberENV: {
....

就像一个快速插件一样,位置历史记录设置起来有点困难,因为您
基本上必须告诉您的服务器在被击中时从基本页面提供服务,然后忽略任何内容,但这实际上只是一次性设置。

关于Ember.js、EmberCLI - 从 URL 中删除哈希 (#),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25028330/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com