zoukankan      html  css  js  c++  java
  • angular遇到问题

    一、一个js中只有一个angunlar.module,但可以有多个controller,从而控制多个不同的作用域,每个作用域都有独立的$scope。不同作用域之间又有$rootScope这个桥梁

    二、在repeat多个li的时候,ng-controller应该写在ul外部的div中,而不是ul中

    三、使用angulat-animate用ng-hide设置动画时不能给动画的元素id后设置样式,应该给其他

    四、先说一下,下面的“实现”指的是,在input输入文字,p里面会随之改变,也就是双向绑定。(我貌似陷入了程序语言的思想中(⊙﹏⊙)b)

    代码一

    <div ng-app="app" ng-controller="ctrl">
        <p>{{name}}</p>
        <div>
            <input type="text" ng-model="name">
        </div>
    </div>
     var app = angular.module("app", []);
        app.controller("ctrl", function ($scope) {
            $scope.name="meng";
        })

    结果:能"实现"

    代码二

    <div ng-app="app" ng-controller="ctrl">
        <p>{{name}}</p>
        <div ng-if="show">
            <input type="text" ng-model="name">
        </div>
    </div>
      var app = angular.module("app", []);
        app.controller("ctrl", function ($scope) {
            $scope.show=true;
            $scope.name="meng";
        })

    结果:不能“实现”

     http://huangtengfei.com/2015/09/scope-in-angularjs/

    归纳一句话就是,ng-if会产生新的作用域,so。。

    那么如何改呢?看下面代码:

    <div ng-app="app" ng-controller="ctrl">
        <p>{{data.name}}</p>
        <div ng-if="data.show">
            <input type="text" ng-model="data.name">
        </div>
    </div>
    var app = angular.module("app", []);
        app.controller("ctrl", function ($scope) {
            $scope.data = {};
            $scope.data.show = true;
            $scope.data.name = "meng"
        })

    能“实现”

    解决的原理是:创建一个引用型变量。随之导致两者操纵的是同一个作用域就行了╮(╯▽╰)╭

  • 相关阅读:
    窗体传值的方式
    多线程的两种启动方式的简单总结
    ExcelHelper
    从Excel读取信息,新建文件夹,根据起始页号和页数取图片,并将图片重命名
    自定义函数
    从sql数据库中将图片导出并重命名
    统计重复出现的次数
    创建S数据库表SQL语句
    C#执行sql文件 运行sql文件
    ssh整合常见的后台错误
  • 原文地址:https://www.cnblogs.com/chenluomenggongzi/p/6151417.html
Copyright © 2011-2022 走看看