angularJs在多个控制器中共享服务数据的方法


Posted in Javascript onSeptember 30, 2018

如下所示:

<div ng-app="module">
 <div ng-controller="ctrl1">
  <table border="1" width="600">
   <tr>
    <td>网站名称</td>
    <td>网址</td>
   </tr>
   <tr ng-repeat="v in data.webs">
    <td>{{v.name}}</td>
    <td>{{v.url}}</td>
   </tr>
  </table>
 </div>
 <hr>
 <div ng-controller="ctrl2">
  <table border="1" width="600">
   <tr>
    <td>网站名称</td>
    <td>网址</td>
   </tr>
   <tr ng-repeat="v in data.webs">
    <td>{{v.name}}</td>
    <td>{{v.url}}</td>
   </tr>
  </table>
  <h1>{{web.name}}</h1>
  <button ng-click="removeAll()">删除所有数据</button>
 </div>
</div>
<script>
 var m = angular.module('module', []);
 //定义服务
 m.factory('videoServer', ['$http', function ($http) {
  var obj = {
   data: {webs:[]},
   //所有数据
   all: function () {
    return $http({url: '1.php'}).then(function (response) {
     obj.data.webs = response.data;
     return obj.data;
    });
   },
   //获取一条数据
   find: function (id) {
    return this.all().then(function (data) {
     for (var i = 0; i < data.length; i++) {
      if (data[i].id == id) {
       return data[i];
      }
     }
    });
   },
   //删除所有数据
   flush: function () {
    obj.data.webs=[];
   }
  };
  return obj;
 }]);
 //控制器ctrl1
 m.controller('ctrl1', ['$scope', 'videoServer', function ($scope, videoServer) {
  videoServer.all().then(function (data) {
   $scope.data = data;
  });
 }]);

  //控制器ctrl2
 m.controller('ctrl2', ['$scope', 'videoServer', function ($scope, videoServer) {
  videoServer.all().then(function (data) {
   $scope.data = data;
  });
  videoServer.find(1).then(function (data) {
   $scope.web = data;
  })
  $scope.removeAll=function(){
   videoServer.flush();
  }
 }]);
</script>

1.php

<?php
$data = [
 [ 'name' => '百度', 'url' => 'www.baidu.com' ],
 [ 'name' => '谷歌', 'url' => 'google.com' ],
];
echo json_encode($data,JSON_UNESCAPED_UNICODE);

以上这篇angularJs在多个控制器中共享服务数据的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JQuery下的Live方法和$.browser方法使用代码
Jun 02 Javascript
jQuery修改class属性和CSS样式整理
Jan 30 Javascript
JQuery实现鼠标移动图片显示描述层的方法
Jun 25 Javascript
JavaScript实现快速排序的方法
Jul 31 Javascript
自己动手写的jquery分页控件(非常简单实用)
Oct 28 Javascript
浅谈javascript中onbeforeunload与onunload事件
Dec 10 Javascript
分享12个实用的jQuery代码片段
Mar 09 Javascript
深入理解Javascript中的观察者模式
Feb 20 Javascript
BootStrap表单宽度设置方法
Mar 10 Javascript
vue.js单文件组件中非父子组件的传值实例
Sep 13 Javascript
VUE解决微信签名及SPA微信invalid signature问题(完美处理)
Mar 29 Javascript
js实现上下左右键盘控制div移动
Jan 16 Javascript
iview Upload组件多个文件上传的示例代码
Sep 30 #Javascript
VUE 配置vue-devtools调试工具及安装方法
Sep 30 #Javascript
angularJs中orderBy筛选以及filter过滤数据的方法
Sep 30 #Javascript
jQuery实现点击图标div循环放大缩小功能
Sep 30 #jQuery
angularJs使用ng-repeat遍历后选中某一个的方法
Sep 30 #Javascript
基于VUE实现的九宫格抽奖功能
Sep 30 #Javascript
react native基于FlatList下拉刷新上拉加载实现代码示例
Sep 30 #Javascript
You might like
PHP Pear 安装及使用
2009/03/19 PHP
php下将图片以二进制存入mysql数据库中并显示的实现代码
2010/05/27 PHP
PHP发送邮件确认验证注册功能示例【修改别人邮件类】
2019/11/09 PHP
Laravel框架下载,安装及路由操作图文详解
2019/12/04 PHP
jquery ui dialog里调用datepicker的问题
2009/08/06 Javascript
Js从头学起(基本数据类型和引用类型的参数传递详细分析)
2012/02/16 Javascript
node.js正则表达式获取网页中所有链接的代码实例
2014/06/03 Javascript
jQuery实现长按按钮触发事件的方法
2015/02/02 Javascript
firefox浏览器用jquery.uploadify插件上传时报HTTP 302错误
2015/03/01 Javascript
纯javascript代码实现计算器功能(三种方法)
2015/09/07 Javascript
使用requirejs模块化开发多页面一个入口js的使用方式
2017/06/14 Javascript
详解webpack分离css单独打包
2017/06/21 Javascript
javascript实现文本框标签验证的实例代码
2018/10/14 Javascript
详解VUE里子组件如何获取父组件动态变化的值
2018/12/26 Javascript
微信小程序如何实现全局重新加载
2019/06/05 Javascript
微信小程序实现购物车小功能
2020/12/30 Javascript
Python字符串的encode与decode研究心得乱码问题解决方法
2009/03/23 Python
python与php实现分割文件代码
2017/03/06 Python
python机器学习理论与实战(一)K近邻法
2021/01/28 Python
浅谈Python里面小数点精度的控制
2018/07/16 Python
pytorch中tensor的合并与截取方法
2018/07/26 Python
对Tensorflow中的矩阵运算函数详解
2018/07/27 Python
python 的 openpyxl模块 读取 Excel文件的方法
2019/09/09 Python
在python中做正态性检验示例
2019/12/09 Python
浅谈PyQt5中异步刷新UI和Python多线程总结
2019/12/13 Python
纯CSS3+DIV实现小三角形边框效果的示例代码
2020/08/03 HTML / CSS
Zadig&Voltaire官网:法国时装品牌
2018/01/05 全球购物
Abbacino官网:包、钱包和女士配饰
2019/04/15 全球购物
低碳环保口号
2014/06/12 职场文书
小学生志愿者活动方案
2014/08/23 职场文书
杜甫草堂导游词
2015/02/03 职场文书
毕业赠语大全
2015/06/23 职场文书
大学生学习十八届五中全会精神心得体会
2016/01/05 职场文书
党组织结对共建协议书
2016/03/23 职场文书
如何用PHP实现多线程编程
2021/05/26 PHP
了解Kubernetes中的Service和Endpoint
2022/04/01 Servers