javascript - AngularJS:如何将数据从服务传输到 Controller ?

标签 javascript angularjs frameworks

我是 AngularJS 的新手,对 JavaScript 不太熟悉。我正在尝试使用 AngularJS v1.3.15 制作一个简单的应用程序。

我有这个 Controller :

var app = angular.module('game', [])
app.controller('SimpleController', ['market_data', function(market_data) {

    this.city_name = "City";
    market_data.success(function(data) {
        console.log(data.city_name);
        this.city_name = data.city_name;
    });
}]);

这个 View :

<div ng-controller="SimpleController as simple" >
  <h1>Hello {{simple.city_name}}!</h1>
</div>

城市名称行不会更改默认值:City

据我所知,market_data 服务似乎运行良好。我对 console.log 的调用打印出我期望服务返回的字符串。因此,data.city_name 包含正确的信息,但 this.city_name 不会更新 Controller 。

将此数据输入 Controller 以便其显示在我的 View 中的最佳方法是什么?

最佳答案

this使用局部变量。 vm(viewmodel)常用。

var app = angular.module('game', [])
app.controller('SimpleController', ['market_data', function(market_data) {

    var vm = this;
    vm.city_name = "City";

    market_data.success(function(data) {
        console.log(data.city_name);
        vm.city_name = data.city_name;
    });
}]);

关于javascript - AngularJS:如何将数据从服务传输到 Controller ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29808633/

相关文章:

javascript - Knockout js - 如果某些条件不匹配,如何将下拉值更改为以前的值

javascript - 使用 AngularJS 将图像上传到 Imgur

ios - Swift Framework 不包含从扩展到通用结构的符号

iphone - 未找到 i386 架构的 iOS 符号

javascript - 绕过登录打开其他应用内页

javascript - 在链接上模拟 jQuery/JavaScript 中的点击

javascript - 如何在不阻止页面渲染的情况下显示弹出警报消息以及如何每 30 秒刷新一次图表

javascript - 如何在同一状态下的参数化 URL 之间导航?

javascript - 如何管理 AngularJS 的 http 请求调用

php - Kohana 框架发生了什么?