Angular js学习笔记 (一)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_27948659/article/details/79539630

AngularJS 指令

  • AngularJS 指令是扩展的 HTML 属性,带有前缀 ng-。
  • ng-app 指令初始化一个 AngularJS 应用程序。
  • ng-init 指令初始化应用程序数据。
  • ng-model 指令把元素值(比如输入域的值)绑定到应用程序。
  • (ng-app 指令告诉 AngularJS,
    元素是 AngularJS 应用程序 的”所有者”。)

<div ng-app="" ng-init="firstName='John'">
     <p>在输入框中尝试输入:</p>
     <p>姓名:<input type="text" ng-model="firstName"></p>
     <p>你输入的为: {{ firstName }}</p>
</div>

ng-app 指令

  • ng-app 指令定义了 AngularJS 应用程序的 根元素。
  • ng-app 指令在网页加载完毕时会自动引导(自动初始化)应用程序。

ng-model 指令

  • ng-model 指令 绑定 HTML 元素 到应用程序数据。
  • ng-model 指令也可以:
  • 为应用程序数据提供类型验证(number、email、required)。
    为应用程序数据提供状态(invalid、dirty、touched、error)。
    为 HTML 元素提供 CSS 类。
    绑定 HTML 元素到 HTML 表单。

ng-repeat 指令

  • ng-repeat 指令对于集合中(数组中)的每个项会 克隆一次 HTML 元素。

创建自定义的指令

  • 你可以使用 .directive 函数来添加自定义的指令。要调用自定义指令,HTML 元素上需要添加自定义指令名。使用驼峰法来命名一个指令,ymcDirective, 但在使用它时需要以 - 分割, ymc-directive

  • 当然也可以限制使用标签
  • E 作为元素名使用
  • A 作为属性使用
  • C 作为类名使用
  • M 作为注释使用

<body ng-app="myApp">
<ymc-directive></ymc-directive>
<script>
var app = angular.module("myApp", []);
app.directive("ymcDirective", function() {
    return {
        template : "<h1>自定义指令!</h1>"
    };
});
</script>

</body>

Angluar js 模型

  • ng-model 指令可以将输入域的值与 AngularJS 创建的变量绑定。
<div ng-app="myApp" ng-controller="myCtrl">
    名字: <input ng-model="name">
</div>

<script>
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
    $scope.name = "John Doe";
});
</script>

双向绑定

在修改 输入框的值 后,标签也会随着变化


<div ng-app="myApp" ng-controller="myCtrl">
名字: <input ng-model="name">
<h1>你输入了: {{name}}</h1>
</div>

<script>
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
    $scope.name = "ymc";
});
</script>

(例子) 使用双向绑定测试


<form ng-app="" name="myForm">
    Email:
    <input type="email" name="myAddress" ng-model="text">
    <span ng-show="myForm.myAddress.$error.email">不是一个合法的邮箱地址</span>
</form>

使用 $error.email 来判断标签 输入格式是否是 ecail,不是则显示 apan标签的内容

v a l i d ( t r u e ) dirty (如果值改变则为 true)
$touched (如果通过触屏点击则为 true)

scope 是模型。

scope 是模型。
scope 是一个 JavaScript 对象,带有属性和方法,这些属性和方法可以在视图和控制器中使用。

<div ng-app="myApp" ng-controller="myCtrl">
    <input ng-model="name">
    <h1>{{greeting}}</h1>
    <button ng-click='sayHello()'>点我</button>    
</div>

<script>
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
    $scope.name = "ymc";
    $scope.sayHello = function() {
        $scope.greeting = 'Hello ' + $scope.name + '!';
    };
});
</script>

猜你喜欢

转载自blog.csdn.net/qq_27948659/article/details/79539630