如果有更好的方式,请留言交流:

2017-07-07

多个controller共用一个函数。在$rootScope中定义方法,

$rootScope.share_fun = function test_fun($scope){
  $scope.text = "123"; //修改子域的值
}

然后大调用的时候,把$scope传过去

$rootScope.share_fun($scope);

ui-sref传参数的写法:

首先你需要在html标记里写  ui-sref="content1({id:item.id})"  定义跳转,感觉ui-sref类似于a标签

然后你需要配置state,记住一定要加:id,要不然值是传不过去的。

  .state("content1", {
url: 'tab/content1/:id',
templateUrl: "templates/tab-content1.html",
cache: false
})

最后controller里面加一个$stateParams参数,这个参数里面就有id啦。

还有说说url: '/tab/content1/:id' 和 url: 'tab/content1/:id' 的区别:

如果是url: '/tab/content1/:id' 直接访问  http://localhost:46858/ionic_router/index.html?sqcode=wxsgshequ0001&snm_from=web&appcode=wxgd#/tab/content1/62046 是可以的

如果是url: 'tab/content1/:id'  (tab前面少了一个/)直接访问 http://localhost:46858/ionic_router/index.html?sqcode=wxsgshequ0001&snm_from=web&appcode=wxgd#/tab/content1/62046会跳转到

http://localhost:46858/ionic_router/index.html?sqcode=wxsgshequ0001&snm_from=web&appcode=wxgd#/tab/tab1这个主页面去。

我的理解是没有/就认为是内部跳转,一般不让你访问内部跳转,一律跳转到主页,而有/就是外部跳转,可以直接访问外部跳转。

2017-07-10

外部获取$scope作用域并修改:

   var appElement = document.querySelector('[ng-controller=published]');//获得绑定controllerdom节点
var $scope = angular.element(appElement).scope(); //获得$scope对象
$scope.$apply(function(){
publish_pics_array.push(ret);
$scope.pics_display_array.push({"url": ret});
});//刷新数据

Angular的一些用法或者结构技巧的更多相关文章

  1. mount命令的用法,以及技巧光盘镜像文件、移动硬盘及U盘的方法

    本文介绍mount命令的用法,以及技巧光盘镜像文件.移动硬盘及U盘的方法. 一,挂接命令(mount) 挂接(mount)命令的使用方法. 命令格式: 复制代码 代码如下: mount [-t vfs ...

  2. Shell脚本字符串匹配及日常命令工具 - 用法总结(技巧指南)

    Shell提供了很多字符串和文件处理的命令,如awk.expr.grep.sed等命令,还有文件的排序.合并和分割等一系列的操作命令.下面重点总结下Shell字符串处理.文本处理以及各类命令及函数用法 ...

  3. angular路由配置用法

      在如今,很多事用于HTML5嵌套在webview,成为(伪)app,用a链接来跳转,简单页面来说的话,速度还是可以的,但是应用越来越多,是用不流畅,当然原生的app像安卓以及IOS来说的话,跳转是 ...

  4. sizeof strlen strncpy用法总结 结构体实际所占内存大小 以及memset用法

    sizeof测类型(数组名除外) strlen测实际长度 strncpy返回指针类型 #include <stdio.h> #include <stdlib.h> #inclu ...

  5. angular.element()的用法

    1.引用jQuery的前提下,和$用法基本相同:angular.element('#').html() 例如: angular.element('#test').html() angular.elem ...

  6. angular中$q用法, $q多个promise串行/同步/等待), $q.all用法,使用

    $q的基本用法 function fn() { var defer = $q.defer(); setTimeout(function () { console.log(1); defer.resol ...

  7. Angular - ng-repeat高级用法

    ng-repeat高级用法: 遍历数组:    <li ng-repeat="item in array">{{item}}</li> 遍历对象:    k ...

  8. angular过滤器基本用法

    1.过滤器主要用于数据的筛选,可以直接在模板使用 语法: {{expression | filter}} {{expression | filter | filter2}} {{expression ...

  9. Java中splite的用法与小技巧

    在java.lang包中也有String.split()方法,与.net的类似,都是返回是一个字符型数组,但使用过程中还有一些小技巧.如执行:"2|33|4".split(&quo ...

随机推荐

  1. MyBatis数据库连接的基本使用

    MyBatis部分: 本部分内容只主要体现Mybatis的特点. (1)MyBatis是什么? 开源的持久层框架,MyBatis的底层仍然是JDBC (2)编程步骤 step1 Maven项目 pom ...

  2. xlrd使用

    import xlrd //导入模块filename='路径/文件名' //文件路径.名称python读取excel中单元格的内容返回的有5种类型,即ctype:0. empty(空的),1 stri ...

  3. 无线渗透wep加密路由器

    停掉网络服务 service network-manager stop 检查现在的环境适不适合使用airmon-ng airmon-ng check 杀死可能冲突的进程 开启网卡monitor模式 a ...

  4. Errors running builder 'Faceted Project Validation Builder' on project

    右键eclipse中的工程,选择properties,选择build,去掉出问题的validation校验项,重启eclipse即可.

  5. java面试题:jvm

    jvm内存区域 Q:jvm内存怎么划分的? 答: 方法区(线程共享):各个线程共享的一个区域,用于存储虚拟机加载的类信息.常量.静态变量.即时编译器编译后的代码等数据.虽然 Java 虚拟机规范把方法 ...

  6. as3.0加载swf并控制

    私人QQ 280841609 var myload:Loader=new Loader(); var url:URLRequest=new URLRequest("1.swf"); ...

  7. 善于利用python中的os模块

    作为一个程序猿,平时善于利用python中的os模块进行路径等操作,会省去很多麻烦,下面总结一下我平时经常用到的方法: import os os.getcwd() # 获取当前文件所在的目录 os.p ...

  8. f5主备切换演练

    1.准备工作: 1)保证主备机同步 2)备份主备机配置 2.切换:所有操作均在主机 方法1:shutdown主机上联的核心交换机的端口: 此方法在主备切换过程中会丢1个包 方法2:命令行下reboot ...

  9. MyBatis代理开发(2)

    一.开发步骤和程序代码  1.程序员需要编写user.xml映射文件,程序员编写mapper接口需要遵循一些开发规范,mybatis可以自动生成mapper接口实现类代理对象. 2.创建数据库配置文件 ...

  10. (八) .launch文件 ---编写简单的启动脚本文件

    下面我们将介绍,如何编写一个启动脚本程序:(.launch文件) 还记得我们在 创建ROS软件包教程 中创建的第一个程序包(beginner_tutorials)吗,现在我们要使用它. 在 begin ...