Angular$route服务没有;t被按时注入到控制器中——最初在页面加载时未定义,但后来一切都像符咒一样工作
Angular $route service doesn't get injected to a controller on time - getting undefined initially, on page load, but then all works like a charm
每次刷新页面时,我都会收到以下错误的倍数:
TypeError: Cannot read property 'activeSite' of undefined
每页重新加载六个,显然每个选项卡有两个错误。
之后,网站正常工作,没有任何错误
我最初的项目是用yeoman生成的,它运行得很好,没有任何错误,直到错误似乎突然出现
我能够用这个Plunker重新创建问题:
http://plnkr.co/edit/fT3heMEgxfT9zLPKObC9?p=preview
乍一看,一切都很好,但看看控制台,你就会明白我的意思
谢谢你抽出时间
Jared
也许
if ($route.hasOwnProperty('current')) {
return (active === $route.current.$$route.activeSite);
}
在页面呈现过程中,$route.current
可能没有activeSite
属性。你可以这样避免错误
$scope.site = function (active) {
if ($route.current !== undefined) {
return (active === $route.current.activeSite);
}
return false;
};
由于您的绑定是在ng视图之外定义的,AngularJS可能会在设置ng视图之前评估您的绑定,即在从远程位置加载视图时,因此会出现此错误。
相关文章:
- 如何使用url加载程序在webpack中导入多个图像
- 如何在生成下载文件时显示加载动画
- 有没有任何方法可以将控制器从文件加载到ui路由器$stateProvider中
- 无法在通过jQuery的ajax加载的页面中执行javascript
- Emberjs应用程序加载在除Index之外的所有路由上
- 在chrome.tabs.onCreated之后加载HTML页面
- 单击F5时如何停止页面加载
- HTML5音频加载和播放获胜'我不能在iPad上工作
- 跟踪在页面加载时应用内联样式的JavaScript
- 在使用Polymer'加载所有json文件后执行方法;s的核心ajax
- jQuery Lazy加载动画滚动
- Html页面上的多个Base64图像和平滑加载
- 如何创建带有插槽的vue js组件预加载程序
- Webpack/Rect:遵循egghead.io教程,但出现错误:您可能需要一个合适的加载程序来处理此文件类型
- 如何使该数据在所有元素中加载
- Chrome扩展没有't在重新加载之前考虑期权价值
- 使用javascript在Flash中加载外部图像
- Ajax文件加载和<输入>文件加载
- 使用javascript函数在页面初始化后加载jquery
- Angular$route服务没有;t被按时注入到控制器中——最初在页面加载时未定义,但后来一切都像符咒一样工作