Javascript 无法使ng watch以角度工作
Background:用户在文本框中输入他的城市,然后进入一个新页面,显示当天的平均温度以及一般天气预报(预计会下雨、下雪等天气)。我希望页面动态响应预测,因此如果预计会下雪,它将加载某些数据。为此,我将一个模型附加到负责呈现预测的html元素。为了获得JSON格式的预测数据,我使用OpenWeatherMapAPI() 问题:我的angular应用程序对天气预报没有响应,我不知道为什么会这样 以下是相关的角度代码:Javascript 无法使ng watch以角度工作,javascript,angularjs,Javascript,Angularjs,Background:用户在文本框中输入他的城市,然后进入一个新页面,显示当天的平均温度以及一般天气预报(预计会下雨、下雪等天气)。我希望页面动态响应预测,因此如果预计会下雪,它将加载某些数据。为此,我将一个模型附加到负责呈现预测的html元素。为了获得JSON格式的预测数据,我使用OpenWeatherMapAPI() 问题:我的angular应用程序对天气预报没有响应,我不知道为什么会这样 以下是相关的角度代码: $scope.forecast = ''; $scope.isSnow
$scope.forecast = '';
$scope.isSnow = function() {
var subString = 'snow';
if (($scope.forecast).indexOf(subString) > -1) {
return 'snow!';
} else {
return 'no snow';
}
}
以下是相关的html:
<div class="panel-body">
Daytime temperature: {{convertToCelcius(W.temp.day)}} °C
general forecast: <div ng-model="forecast">{{W.weather[0].description}}</div>
<div>{{isSnow()}}</div>
日间温度:{{convertToCelcius(W.temp.day)}}
一般天气预报:{{W.weather[0]。说明}
{{isSnow()}}
因此,即使天气预报显示“小雪”,html也显示“无雪”。据我所知,ng模型有两种工作方式,因此html中发生的任何更改都应该反映在$scope.forecast中,那么为什么不发生这种情况呢?您是否在html中使用高于此级别的控制器/应用程序?它可以工作!试试这个: