• 如何学习angular.js


    AngularJS 是一个为动态WEB应用设计的结构框架。 它能让你使用HTML作为模板语言,通过扩
    展HTML的语法,让你能更清楚、 简洁地构建你的应用组件。 它的创新点在于,利用 数据绑定 依赖
    注入,它使你不用再写大量的代码了。 这些全都是通过浏览器端的Javascript实现,这也使得它能够完
    美地和任何服务器端技术结合。
    AngularJS是为了克服HTML在构建应用上的不足而设计的。 HTML是一门很好的为静态文本展示
    设计的声明式语言,但要构建WEB应用的话它就显得乏力了。 所以我做了一些工作(你也可以觉得是
    小花招

    style="font-family: MicrosoftYaHei;fonAngularJS使用了不同的方法,它尝试去补足HTML本身在构建应用方面的缺陷。 AngularJS通过
    使用我们称为标识符(directives)的结构,让浏览器能够识别新的语法。 例如:
    使用双大括号 {{}} 语法进行数据绑定;
    使用DOM控制结构来实现迭代或者隐藏DOM片段;
    支持表单和表单的验证;
    能将逻辑代码关联到相关的DOM元素上;
    能将HTML分组成可重用的组件。
    端对端的解决方案
    AngularJS试图成为成为WEB应用中的一种端对端的解决方案。 这意味着它不只是你的WEB应用
    中的一个小部分,而是一个完整的端对端的解决方案。 这会让AngularJS在构建一个CRUD(增加
    reate、 查询Retrieve、 更新Update、 删除Delete)的应用时显得很“ 固执” (原文为
    pinionated,意指没有太多的其他方式)。 但是,尽管它很“ 固执” ,它仍然能确保它的“ 固执” 只
    是在你构建应用的起点,并且你仍能灵活变动。 AngularJS的一些出众之处如下:
    构建一个CRUD应用可能用到的全部内容包括:数据绑定、 基本模板标识符、 表单验证、 路由、 深度链
    接、 组件重用、 依赖注入。
    测试方面包括:单元测试、 端对端测试、 模拟和自动化测试框架。
    具有目录布局和测试脚本的种子应用作为起点。
    ngularJS的可爱之处
    AngularJS通过为开发者呈现一个更高层次的抽象来简化应用的开发。 如同其他的抽象技术一
    样,这也会损失一部分灵活性。 换句话说,并不是所有的应用都适合用AngularJS来做。 AngularJS主
    要考虑的是构建CRUD应用。 幸运的是,至少90%的WEB应用都是CRUD应用。 但是要了解什么适合用
    ngularJS构建,就得了解什么不适合用AngularJS构建。

    <!doctype html>
    <html ng-app>
    <head>
    <script src="http://code.angularjs.org/angular-1.1.0.min.js"></script>
    <script src="script.js"></script>
    </head>
    <body>
    <div ng-controller="InvoiceCntl">
    <b>Invoice:</b>
    <br>
    <br>
    <table>
    <tr><td>Quantity</td><td>Cost</td></tr>
    <tr>
    <td><input type="integer" min="0" ng-model="qty" required ></td>
    <td><input type="number" ng-model="cost" required ></td>
    </tr>
    </table>
    <hr>
    <b>Total:</b> {{qty * cost | currency}}
    </div>
    </body>
    </html>
    function InvoiceCntl($scope) {
    $scope.qty = 1;
    $scope.cost = 19.95;
    }
    it('should show of angular binding', function() {
    expect(binding('qty * cost')).toEqual('$19.95');
    input('qty').enter('2');
    input('cost').enter('5.00');
    expect(binding('qty * cost')).toEqual('$10.00');
    });
    ewline"> 运行效果
    Invoice:
    Quantity Cost
    1 19.95


  • 相关阅读:
    模拟最烂的网速
    TableView编辑状态下跳转页面的崩溃处理
    Swift的Optional类型
    autolayout之后获取uiview的frame
    Swift中的闭包(Closure)[转]
    Swift1.2与Xcode6.3 beta
    python技巧31[python中使用enum][转]
    Python初学者的捷径[译]
    tornado+bootstrap急速搭建你自己的网站
    Windows下nginx+tomcat实现简单的负载均衡、动静分离等
  • 原文地址:https://www.cnblogs.com/wangwei1234/p/4697158.html
Copyright © 2020-2023  润新知