ionic 中的 $scope.$watch 问题

angularjs 中的$watch 用来监控变量的变化,并做出改变.

在 ionic 中也有这个需求,这有个小小的坑.

<label class="item item-input">
     <i class="icon ion-search placeholder-icon"></i>
     <input type="text" placeholder="Search" ng-model="user">
     </label>
            {{user}}
            {{updated}}
  $scope.updated = -1;
  $scope.$watch(‘user.name‘, ()->
    console.log $scope.user
    $scope.updated++;
  , true
  );

用 angular 这样的写法,死活不行.

google 了下,需要把watch的内容放在一个父元素中.js 代码如下:


  $scope.user = {name: "sss"}
  $scope.updated = -1;

  $scope.$watch(‘user.name‘, ()->
    console.log $scope.user
    $scope.updated++;
  , true
  );

html 代码

<div class="list list-inset">
    <label class="item item-input">
        <i class="icon ion-search placeholder-icon"></i>
        <input type="text" placeholder="Search" ng-model="user.name">
    </label>
{{user}}
{{updated}}
</div>

本文参考

http://forum.ionicframework.com/t/why-does-this-scope-watch-not-work/9430

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-09 01:26:23

ionic 中的 $scope.$watch 问题的相关文章

解决 ionic 中的 CORS(跨域)

译者注:本人翻译功力有限,所以文中难免有翻译不准确的地方,凑合看吧,牛逼的话你看英文版的去,完事儿欢迎回来指正交流(^_^) 如果你通过 ionic serve 或者 ionic run 命令使用或 live reload 或者访问过外部 API 结点,那么你肯定遇到过 CORS 问题,譬如下面这样: XMLHttpRequest cannot load http://api.ionic.com/endpoint. No 'Access-Control-Allow-Origin' header

ionic中的生命周期函数

//ionic中的生命周期函数 onPageLoaded(){ //page初始化时 console.log("page 1 : page loaded"); } //在这里可以做页面初始化的一些事情 onPageWillEnter(){ //page即将进入时 console.log("page 1 : page will enter"); } onPageDidEnter(){ //page进入后 console.log("page 1 : page

在angular的自定义回调中操作$scope

在angular的controller中有时候会使用到自定义的回调, 比如异步请求的回调函数 一般返回之后都需要更新页面的数据,即更新$scope.xx 但是如果直接 $scope.xx = data.info 这样根本不会有任何的影响 解决方案 this.callback = function (status) { $scope.$apply(function () { $scope.xx = status; }); }; Scope提供$watch方法监视Model的变化. Scope提供$

ionic中&lt;ion-scroll&gt;设置为左右滚动,苹果手机端触摸到此标签上时无法上下滚动内容

ionic中<ion-scroll>设置为左右滚动,苹果手机端触摸到此标签上时无法上下滚动内容. 如下代码: <ion-scroll direction="x" scrollbar-x="false" style="width:100%">  <ul class="brand-scrollList"> <li ng-repeat="lists in bestProjects&

[ISSUE]关于在ionic中使用span 问题

ionic: v1.3.2 chrome: v39 iphone-simulator: iPhone Retina 真机ipod 4: ios 6.x 在ionic 中使用span, 在chrome, 模拟器上都显示正常显示 但是在真机上面,使用 col-xx, text-align 等都没有用 暂时用div替换了span, 具体原因不明...

Ionic中的$ionicModal使用方法

Ionic中[弹出式窗口]有两种(如下图所示),$ionicModal和$ionicPopup; $ionicModal是完整的页面: $ionicPopup是(Dialog)对话框样式的,直接用JavaScript设定对话框的一些参数,通常用于通知消息.确认等作用: 本文主要介绍IonicModal的使用方法 中文文档:http://ionicframework.net/docs/api/service/$ionicModal/ 英文文档:http://ionicframework.com/d

angular 图片加载失败 情况处理? 如何在ionic中加载本地图片 ?

1.angular 图片加载失败 情况处理 在directive中定义组件,在ng-src错误时,调用err-src app.directive('errSrc',function(){ return { link: function(scope, element, attrs){ if(attrs.src == 'undefined'){ attrs.$set('src', attrs.errSrc); } element.bind('error', function() { if (attr

Ionic中[弹出式窗口]有两种(如下图所示),$ionicModal和$ionicPopup;

出处: http://www.cnblogs.com/CheeseZH/ $ionicModal是完整的页面: $ionicPopup是(Dialog)对话框样式的,直接用JavaScript设定对话框的一些参数,通常用于通知消息.确认等作用: $ionicModal(中文翻译为‘模型’,感觉还是直接称为用Modal好一点.) 模型是一个内容面板,可以临时越过用户的主视图.通常用于选择或编辑一个项.注意,你需要把模型的内容放入一个带有modal类的div内. 举个例子,啥是Modal?: 登录或

替换 ionic 中的 图标

第一步,你把你的项目的SVG文件跟你自己做的图标的SVG文件都上到icomoon.io/app(上传方式上节已经讲过了,不会的翻下上节内容),会看到这么界面 第二步,点击下载后,出现这个页面,修改前缀,文件的名称 第三步,修改每个图标的名称,size值然后点击下载 我做的是安卓的APP所以修改的名字也是按照我自己的来的,你们也按照你们自己的来 第四步,下载下来的文件名字为icomoon压缩包,解压后应该是这样 第五步重点来了,要注意呀,在你的项目里面找到fonts,把你下载下来的fonts文件覆