angularjs入门

当前位置:首页>AngularJS>angularjs入门>AngularJS快速入门指南16:Bootstrap

AngularJS快速入门指南16:Bootstrap

时间:2015-08-07 16:44来源:网络整理 作者:KKWL 点击:
Bootstrap是一套非常流行的样式表框架,本章用以演示如何在AngularJS中使用它。 Bootstrap 为了在AngularJS application中使用Bootstrap,你需要将下面这行代码加入到页面的head部分(或者去Bootst

 

  Bootstrap是一套非常流行的样式表框架,本章用以演示如何在AngularJS中使用它。

Bootstrap

  为了在AngularJS application中使用Bootstrap,你需要将下面这行代码加入到页面的head部分(或者去Bootstrap官网下载包然后引用到页面上):

  查看Bootstrap中文官网以了解更多有关

  下面是一个完整的HTML示例,并附有AngularJS指令和Bootstrap类的说明。

HTML代码

UsersEditFirst NameLast NameEdit {{ user.fName }}{{ user.lName }} Create New User Create New User:Edit User:First Name:Last Name:Password:Repeat: Save Changes

运行

上例中出现的AngularJS指令解释

AngularJS指令描述

<body ng-app 将<body>元素定义为AngularJS application的根元素。

<body ng-controller 在<body>元素中指定一个控制器。

<tr ng-repeat 对users对象的每一个子项都创建一个<tr>元素。

<button ng-click 当<button>元素被点击时,调用editUser()函数。

<h3 ng-show 当edit = true时显示<h3>元素。

<h3 ng-hide 当edit = true时隐藏<h3>元素。

<input ng-model 将<input>标签绑定到application。

<button ng-disabled 当出现错误或者incomplete = true时禁用<button>标签。

Bootstrap类解释

元素Bootstrap类定义

<div> container 定义内容的容器。

<table> table 定义一个表格。

<table> table-striped 定义一个带有striped样式的表格,即奇数行和偶数行的背景色不同。

<button> btn 定义一个按钮。

<button> btn-success 定义一个带有success样式的按钮。

<span> glyphicon 定义一个glyph样式的图标。

<span> glyphicon-pencil 定义一个pencil样式的图标。

<span> glyphicon-user 定义一个user样式的图标。

<span> glyphicon-save 定义一个save样式的图标。

<form> form-horizontal 定义一个horizontal样式的表单。

<div> form-group 定义一组控件。

<label> control-label 定义一个label控件。

<label> col-sm-2 定义一个具有两列的span。

<div> col-sm-10 定义一个具有10列的span。

JavaScript代码

angular.module('myApp', []).controller('userCtrl', function($scope) { $scope.fName = ''; $scope.lName = ''; $scope.passw1 = ''; $scope.passw2 = ''; $scope.users = [ {id:1, fName:'Hege', lName:"Pege" }, {id:2, fName:'Kim', lName:"Pim" }, {id:3, fName:'Sal', lName:"Smith" }, {id:4, fName:'Jack', lName:"Jones" }, {id:5, fName:'John', lName:"Doe" }, {id:6, fName:'Peter', lName:"Pan" } ]; $scope.edit = true; $scope.error = false; $scope.incomplete = false; $scope.editUser = function(id) { if (id == 'new') { $scope.edit = true; $scope.incomplete = true; $scope.fName = ''; $scope.lName = ''; } else { $scope.edit = false; $scope.fName = $scope.users[id-1].fName; $scope.lName = $scope.users[id-1].lName; } }; $scope.$watch('passw1',function() {$scope.test();}); $scope.$watch('passw2',function() {$scope.test();}); $scope.$watch('fName', function() {$scope.test();}); $scope.$watch('lName', function() {$scope.test();}); $scope.test = function() { if ($scope.passw1 !== $scope.passw2) { $scope.error = true; } else { $scope.error = false; } $scope.incomplete = false; if ($scope.edit && (!$scope.fName.length || !$scope.lName.length || !$scope.passw1.length || !$scope.passw2.length)) { $scope.incomplete = true; } }; });

JavaScript代码解释

Scope对象的属性作用

$scope.fName 模型变量(用户first name)。

$scope.lName 模型变量(用户last name)。

$scope.passw1 模型变量(用户password 1)。

$scope.passw2 模型变量(用户password 2)。

$scope.users 模型变量(用户对象的数组)。

$scope.edit 当点击按钮创建一个用户时将该变量设置为true。

$scope.error 当passw1不等于passw2时值为true。

$scope.incomplete 当field中的内容为空时(即length = 0)值为true。

$scope.editUser 修改模型数据。

$scope.watch 监视模型数据(例如判断passw1是否等于passw2)。

$scope.test 进行数据验证,然后设置$scope.error和$scope.incomplete的值。

 

上一章 - AngularJS快速入门指南15:API

下一章 - AngularJS快速入门指南17:Includes

 

 

 

------分隔线----------------------------