• 爱情文章
  • 亲情文章
  • 友情文章
  • 生活随笔
  • 校园文章
  • 经典文章
  • 人生哲理
  • 励志文章
  • 搞笑文章
  • 心情日记
  • 英语文章
  • 范文大全
  • 作文大全
  • 新闻阅读
  • 当前位置: 山茶花美文网 > 心情日记 > 正文

    excel数据源怎么设置 [三种AngularJS中获取数据源的方式]

    时间:2020-03-31来源:山茶花美文网 本文已影响 山茶花美文网手机站

    在AngularJS中,可以从$rootScope中获取数据源,也可以把获取数据的逻辑封装在service中,然后注入到app.run函数中,或者注入到controller中。本篇就来整理获取数据的几种方式。

    ■ 数据源放在$rootScope中

    var app = angular.module("app",[]); app.run(function($rootScope){ $rootScope.todos = [ {item:"",done:true}, {item:"",done:false} ]; })

    {{todo.item}}

    以上,把数据源放在$rootScope中的某个字段中,很容易被重写。

    ■ 数据源放在service中,把servie注入到run函数中

    app.service("TodoService", function(){ this.todos = [ {item:"",done:true}, {item:"",done:false} ]; }) app.run(function($rootScope, TodoService){ $rootScope.TodoService = TodoService; })

    {{todo.item}}

    在html中似乎这样写比较好:

    在service中增加一个方法:

    app.service("TodoService", function(){ this.todos = [ {item:"",done:true}, {item:"",done:false} ]; this.addTodo = fucntion(newTodo){ this.todos.push({item:newTodo, done:false}) } })

    ■ 数据源放在service中,把servie注入到controller中

    app.controller("TodoCtrl", function($scope, TodoService){ this.TodoService = TodoServce; })

    在对应的html中:

    {{todo.item}}

    ■ 数据源放在service中,把servie注入到controller中,与服务端交互

    在实际项目中,service还需要和服务端交互。

    var app = angular.module("app",[]); app.service("TodoService", function($q, $timeout){ this.getTodos = function(){ var d = $q.defer(); //模拟一个请求 $timeout(function(){ d.resolve([ {item:"", done:false}, ... ]) },3000); return d.promise; } this.addTodo = function(item){ this.todos.push({item:item, done:false}); } }) app.controller("TodoCtrl", function(TodoService){ var todoCtrl = this; TodoService.getTodos().then(function(result){ todoCtrl.todos = result; }) todoCtrl.addTodo = TodoService.addTodo; })

    以上就是AngularJS中获取数据源的方法,希望对大家的学习有所帮助。

    • excel数据源怎么设置 [三种AngularJS中获取数据源的方式] 相关文章:
    • 爱情文章
    • 亲情文章
    • 友情文章
    • 随笔
    • 哲理
    • 励志
    • 范文大全