hashbang斜线还是没斜线?

Mar*_*ark 5 javascript convention hashbang

我们应该做的site.com/#!/blog还是site.com/#!blog

我知道没有实际的区别,但是作为一个web开发者社区,仍然应该有一个传统的标准,以便用户可以轻松记住网址.如果没有已经建立的标准,理想情况下有人会发布一个有利于一个的答案,有人会发布另一个有利于另一个的答案,一个人将得到比另一个更多的选票......

我个人更喜欢:site.com/#!blog仅仅因为它更短.但是我看到很多其他网站使用其他版本.

顺便说一句,如果你的第一直觉是指示我们不使用hashbangs,那么这个问题不适合你,请不要管它们.

Din*_*uzz 10

你忘记了第三种选择site.com#!blog.

如果你想得到所有语义,问题就变成"在网址中代表什么'/'?"

  • 它代表物理目录吗? [site.com#!blog]

导航文件系统时,文件夹用斜杠分隔.这也是网络上的自然行为,但路由改变了这一点.

  • 它是否代表内容的层次结构? [site.com/#!blog]

郊游介绍了内容的层次结构.而不是问号和&符号,查询变量用斜杠分隔,根据开发人员认为重要的东西创建深层链接结构.

  • 它是否代表了网址中的上下文分离? [site.com/#!/blog]

Stack Overflow就是我所说的"上下文分离"的一个很好的例子.这个问题的网址是[ http://stackoverflow.com/questions/5414972/hashbang-slash-or-no-slash/].问题ID和问题标题之间的斜杠不存在,因为名称文件夹中有一个文件5414972.ID只有一个问题,5414972因此层次结构也没有必要.使用斜杠来分隔ID和名称是有意识的选择,而不是使用任何其他分隔符,例如连字符,下划线,甚至根本没有分隔符.不是斜杠的分隔符可能会使两个变量类似于一个变量.通过在哈希爆炸的任一侧放置斜杠,网址变为:

url prefix > ajax crawling notation > the specific page

而不是

url prefix > ajax crawling notation and the specific page.

根据你的答案是肯定的(是的,这是主观的),你将得到你的答案.我认为,当我们仍然无法决定如何格式化日期时,尝试让整个世界就此达成一致,这有点愚蠢.

至于关于对"哈希爆炸"的怨恨的最后一点评论,我想你正在想象这个.当他们的声音与"闪光刘海"相似时,谁不喜欢"哈希刘海"?


Mal*_*lio 5

一个斜线就像一只蚂蚁:当你看到它时,你希望看到另一只.

site.com/#!/blog如果在我们的未来有一个site.com/#!/blog/latest, site.com/#!/blog/archive/october或类似的东西,那是正确的.

只是我的€0.014185.


Jor*_*dan 4

这取决于你在做什么。如果您基本上只是尝试使用 ajaxify 站点结构,那么在我看来,包含根 / 是有意义的,因此 /#!/blog。弹出窗口、跳转选项卡等可以使用其他结构。

我认为对此不应该有一个常规标准。像 mod_rewrite 这样的工具存在是有原因的:无限的问题有无限的解决方案,并且尝试标准化像 URL 这样复杂的东西是不可能的。

另外,对于任何想知道 hashbangs 合法用途的人:http://code.google.com/web/ajaxcrawling/