AngularJS:refresh ng include取决于参数

AngularJS:refresh ng include取决于参数,angularjs,Angularjs,是否有方法刷新ng,包括要求其从服务器重新提取模板? 我知道我可以通过,$templateCache.remove('/templates/home')从$templateCache中删除该条目。但实际上,请div刷新ng include,从而从服务器上重新加载它 用例:除了所有其他模板之外,无论您是否登录,主模板都是不同的。它是如此不同,以至于它是服务器上的一个单独模板。但是,它位于同一路由上,即应用程序的根目录 然而,在用户刷新屏幕后,它会加载正确的模板,但当用户登录时,ng include

是否有方法刷新ng,包括要求其从服务器重新提取模板? 我知道我可以通过,
$templateCache.remove('/templates/home')
$templateCache
中删除该条目。但实际上,请div刷新ng include,从而从服务器上重新加载它

用例:除了所有其他模板之外,无论您是否登录,主模板都是不同的。它是如此不同,以至于它是服务器上的一个单独模板。但是,它位于同一路由上,即应用程序的根目录

然而,在用户刷新屏幕后,它会加载正确的模板,但当用户登录时,ng include不会刷新。这就是我想要解决的问题


但是仅仅清空templateCache并不能解决这个问题。因为视图实际上没有被刷新。

强制页面刷新的一种粗鲁方式是使用$route.reload()。请参阅。$route

从技术上讲,这不是问题的答案,但我们通过在一个url上不提供两个模板解决了我们的问题。因此,当您登录时,我们会从与您登录时不同的url获取模板。通过这种方式,您可以获得loggedin主页而不是not loggedin主页。

有些事情我做不到,因为我使用的是自定义路由系统,但是我找到了一个修复方法,它只涉及更改两个模板的url,而不是让服务器在一个url上推送两个模板,我让客户端在一个范围变量上设置模板。当您包含来自变量的路径时,它将在变量更改时重新渲染。我很快会在答复中总结我所做的更改