Page 428 - AngularJS权威教程
P. 428
408 第 31 章 构建 Angular Chrome 应用
#datetime h2 {
font-size: 1.0em;
}
图31-6 完整的日期
31.9 使用 Wundergroud 的天气 API
这个应用还需要使用外部资源来获取我们感兴趣的当前位置的天气信息。在这个应用程序
中,我们将使用Wunderground 的API。
①
为了使用Wunderground的API,需要获取一个访问API的密钥。
要获取这个访问API的密钥,首先需要注册。到Wunderground的API页面http://www.wunder
ground. com/weather/api/点击"Sign Up for free!"即可。
在随后的页面上填好相关信息之后,可以点击提交,直到到达显示API密钥的详情页面。
设置好之后,找出Wunderground的API密钥,然后保存它。我们很快就会用到它。
构建Angular服务
我们不会将逻辑放到控制器中来提取当前天气,因为它效率低下(当你导航另一个页面时,
控制器就告吹了,因为每当控制器接入后都需要重新调用这些API),同时把实现细节混入业务逻
辑细节中也是不好的设计。
相反,这里应该使用服务。在应用程序生命周期持续的时间里,服务是跨控制器持久存在的,
并且这也是避开控制器隐藏业务逻辑的适当位置。
我们需要在应用启动时配置应用,因此需要使用.provider()方法创建这个服务。这是创建
可以注入到.config()函数中服务的唯一方法。
为了构建这个服务,我们将使用.provider() API方法,它接受一个服务名以及一个定义实
际程序的函数。
——————————
① http://www.wunderground.com/