Angularjs angular是否会自动将“#/”部分添加到url
我的印象是,当一个用户点击一个网站时,没有在最后指定Angularjs angular是否会自动将“#/”部分添加到url,angularjs,Angularjs,我的印象是,当一个用户点击一个网站时,没有在最后指定#/,即mysite.com,而不是mysite.com/#/,并且angular在HTML5模式(false)下运行时,框架应该自动将hashbang#/添加到URL中。然而,在我的应用程序中,这并没有发生。我的假设错了吗?或者我已经配置了一些东西来防止这种情况。如果您试图在mysite.com上访问主页时启用或不启用HTML5模式,浏览器不需要。。然而,如果您尝试访问登录页面,例如禁用HTML5模式,Angular将自动重写URL,如下所示
#/
,即mysite.com
,而不是mysite.com/#/
,并且angular在HTML5模式(false)
下运行时,框架应该自动将hashbang#/
添加到URL中。然而,在我的应用程序中,这并没有发生。我的假设错了吗?或者我已经配置了一些东西来防止这种情况。如果您试图在mysite.com
上访问主页时启用或不启用HTML5模式,浏览器不需要。
。然而,如果您尝试访问登录页面,例如禁用HTML5模式,Angular将自动重写URL,如下所示:mysite.com/#/login
嗯,您刚刚证明它是错误的,不是吗?我不太确定,因为它确实为本地文件URL添加了hashbang,比如file:///C:/Users/dla/Desktop/test.html
您是说从文件系统加载时它的行为不同吗?从HTTP服务器加载test.html时会发生什么情况?是的,它的行为不同,因为此函数this.$$path=removeWindowsDriveName(this.$$path,withoutHashUrl,appBase)当从文件系统加载时,code>将$$path
设置为“/”,当URL不包含windows驱动器名时,将设置为空字符串this.$$path
然后用于决定是否在this.$$compose=function(){
insidelocation hashbangURL
function中添加hashbang所以,您刚才回答了自己的问题,是吗?