感觉这下子,前端的路也宽多了,从容不迫了。

因为可控制的节点又推前了,

有空了好好学一下。

然后结合EXPRESS或METEOR,是不是有点爽?

参考URL:

https://toddmotto.com/ultimate-guide-to-learning-angular-js-in-one-day/

html

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>JS Bin</title>
  <script src="js/angular.min.js"></script>
  <script src="js/script.js"></script>
</head>
<body ng-app="myApp">
  <div >
    <div ng-controller="MainCtrl">
      {{ text }}
      <p> {{ data1.length > 0 && 'My data' || 'No data' }} </p>
      <p> {{ data2.length > 0 && 'My data' || 'No data' }} </p>
      <ul>
          <li ng-repeat="number in numbers | filter:oddNumber">
              {{ number }}
          </li>
          <input type="text" ng-model="myModel" placeholder="Start typing..." />
          <p>My model data: {{ myModel }} </p>
          <li ng-repeat="number in numbers | filter:greaterThanNum">
              {{ number }}
          </li>
      </ul>
    </div>
    <div ng-controller="XHRCtrl">
      {{ ubb.ubbname }}
      <a href="" ng-click="toggle = !toggle">Toggle nav</a>
        <ul ng-show="toggle">
            <li>LINK 1</li>
            <li>LINK 2</li>
            <li>LINK 3</li>
            <li>LINK 4</li>
        </ul>
    </div>
    <div ng-controller="EmailCtrl">
      <ul>
          <li ng-repeat="message in emails.messages">
              <p>From: {{ message.from }}</p>
              <p>Subject: {{ message.subject }}</p>
              <p>{{ message.sent | date:'MMM d, y h:mm:ss a' }}</p>
              <a ng-click="deleteEmail($index)"> Delete email </a>
          </li>
      </ul>

    </div>
    <div ng-controller="MathCtrl">
      {{ result }}
    </div>
    <div ng-controller="FacCtrl">
      {{ result }}dgf
    </div>
    <div ng-controller="FilCtrl">
      <p>No filter: {{ greeting }}</p>
      <p>Reverse: {{ greeting | reverse }}</p>
    </div>
    <div ng-controller="UserCtrl">
      <p class="username"> Welcome, {{ user.details.username }} </p>
      <p class="id">User ID: {{ user.details.id }} </p>
    </div>
    <a custom-button>Click me</a>

  </div>
</body>

</html>

js

var myApp = angular.module('myApp', []);

myApp.controller('MainCtrl', ['$scope', function ($scope) {
    $scope.text = "Heloo, Angular fanitic.";
    $scope.numbers = [10, 25, 35, 45, 60, 80, 100];
    $scope.lowerBound = 42;
    $scope.greaterThanNum = function(item) {
        return item > $scope.lowerBound;
    };
    $scope.myModel = '';
    $scope.data1 = [];
    $scope.data2 = "my dole data";
}]);

myApp.controller('XHRCtrl', ['$scope', '$http', function($scope, $http) {
    $scope.ubb = {};
    $scope.ubb.ubbname = '';
    $http({
        method: 'GET',
        URL: 'http://127.0.0.1/templates/customButton.html'
    })
    .success(function(data, status, headers, config) {
        $scope.ubb.ubbname = 'from ajax data';
    })
    .error(function(data, status, headers, config) {
        $scope.ubb.ubbname = 'from ajax error data';
    });
}]);

myApp.controller('EmailCtrl', ['$scope', function($scope) {
    $scope.emails = {};
    $scope.emails.messages = [{
        "from": "Steve Jobs",
        "subject": "I think I'm holding my phone wrong.",
        "sent": "2015-12-01T08:05:59Z"
    }, {
        "from": "Ellie Goulding",
        "subject": "I got Starry Eyes. lulz",
        "sent": "2015-11-01T08:05:59Z"
    },{
        "from": "Michal Stipe",
        "subject": "Everybody hurts, simteime",
        "sent": "2015-11-05T08:05:59Z"
    }];
    $scope.deleteEmail = function(index) {
        $scope.emails.messages.splice(index, 1);
    };
}]);

myApp.controller('UserCtrl', ['$scope', function ($scope) {
    $scope.user = {};
    $scope.user.details = {
        "username": "Chen Gang",
        "id": "8910112"
    };
}]);
myApp.service('Math', function() {
    this.multiply = function(x, y) {
        return x * y;
    };
});
myApp.controller('MathCtrl', ['$scope', 'Math', function($scope, Math) {
    var a = 12;
    var b = 245;
    var result = Math.multiply(a, b);
    $scope.result = result;
}]);
myApp.factory('Server', ['$http', function($http) {
    return {
        get: function(URL) {
            return $http.get(URL);
        },
    };
}]);

myApp.controller('FacCtrl', ['$scope', 'Server', function($scope, Server) {
    var jsonGet = 'http://127.0.0.1/templates/customButton.html';
    Server.get(jsonGet);
}]);

myApp.filter('reverse', function() {
    return function(Input, uppercase) {
        var out = '';
        for(var i = 0; i < Input.length; i++) {
            out = Input.charAt(i) + out;
        }
        if(uppercase) {
            out = out.toUpperCase();
        }
        return out;
    }
});

myApp.controller('FilCtrl', ['$scope', function($scope) {
    $scope.greeting = 'Todd Motto';
}]);

myApp.directive('customButton', function() {
    return {
        restrict: 'A',
        replace: true,
        transclude: true,
        template: '<a href="http://www.baidu.com" class="myawesomebutton" ng-transclude>' +
                            '< i class="icon-ok-sign"><i>' +
                            '</a>',
        link: function(scope, element, attrs) {
        }
    };
});

截图:

Angular.js入门的样例的更多相关文章

  1. 【Unity 3D 游戏开发】Unity3D 入门 - 工作区域介绍 与 入门演示样例

    一. 工作区域具体解释 1. Scence视图 (场景设计面板) scence视图简单介绍 : 展示创建的游戏对象, 能够对全部的游戏对象进行 移动, 操作 和 放置; -- 演示样例 : 创建一个球 ...

  2. Angular.js 入门(一)

    最近在学习angular.js,为此方便加深对angular.js前端框架的理解,因此写下这篇angular.js入门 首先介绍下什么是angular.js? AngularJS 是一个 JavaSc ...

  3. 移动端报表JS开发演示样例

    近期对移动端的报表开发颇有研究,细磨精算了好久,尽管到如今还是"囊中羞涩",但决定还是先抛砖引玉,拿点小干货出来和大家分享. 研究的工具是比較有代表性的FineReport. 1. ...

  4. Angular.js入门

    一.引入angular.js  <script type="text/javascript" src="../plugins/angularjs/angular.m ...

  5. Angular.js入门教程

    简单介绍 AngularJS是为了克服HTML在构建应用上的不足而设计的.首先Html是一门很好的为静态文本展示设计的声明式语言,但要构建WEB应用的话它就显得乏力了. 通常,我们可以通过以下技术来解 ...

  6. angular.js 入门

    1.安装nodejs 首先要安装nodejs,如果你的电脑已经装过了,最好确认是比较新的版本,否则可能会出问题. 没有安装的直接去nodejs官网下载nodejs安装.安装过程很简单,官网有教程. 安 ...

  7. 一些常用的js,jquerry 样例

    1 设置属性    $(document).attr("title", str) 2 删除属性在增加属性    $("#" + bottonname).remo ...

  8. Angular JS + Express JS入门搭建网站

    3月份开始,接到了新的任务,跟UI开发有关,用的是Angular JS,Express JS等技术.于是周末顺便学习下新技术. 组里产品UI架构如下: 其中前端,主要使用Angular JS框架,另外 ...

  9. Ext JS学习第十六天 事件机制event(一) DotNet进阶系列(持续更新) 第一节:.Net版基于WebSocket的聊天室样例 第十五节:深入理解async和await的作用及各种适用场景和用法 第十五节:深入理解async和await的作用及各种适用场景和用法 前端自动化准备和详细配置(NVM、NPM/CNPM、NodeJs、NRM、WebPack、Gulp/Grunt、G

    code&monkey   Ext JS学习第十六天 事件机制event(一) 此文用来记录学习笔记: 休息了好几天,从今天开始继续保持更新,鞭策自己学习 今天我们来说一说什么是事件,对于事件 ...

随机推荐

  1. 设置win7任务栏显示标题,而不显示缩略图

    win7系统的任务栏可以显示桌面缩略图,这是非常好的一个功能,但是有时候我们希望只显示标题,如下所示 怎样设置呢?只要在桌面上的计算机图标上面“右键”,选择“属性”,在弹出的窗口选择“高级系统设置”, ...

  2. Cocos2d-x实例:设置背景音乐与音效- AppDelegate实现

    为了进一步了解背景音乐和音效播放的,我们通过一个实例给大家介绍一下.如下图所示有两个场景:HelloWorld和Setting.在HelloWorld场景点击“游戏设置”菜单可以切换到Setting场 ...

  3. (转)DES、RSA、MD5、SHA、随机生成加密与解密

    一.数据加密/编码算法列表   常见用于保证安全的加密或编码算法如下:   1.常用密钥算法   密钥算法用来对敏感数据.摘要.签名等信息进行加密,常用的密钥算法包括:   DES(Data Encr ...

  4. (转)MongoDb的十个使用要点

    从 mongodb 阶段性技术总结 中抽取并整理了对大家有帮助的十个要点:   1.mongodb 表名和字段名统一用小写字母 mongodb 是默认区分大小写的,为了避免以前在 mysql 下遇到的 ...

  5. 1.6建造者模式(生成器模式) Builder

    1.概念:将一个复杂对象的构建和他的表示分离,使得同样的构件可以创建不同的表示. 2.实例:肯德基和中餐,肯德基抽象了整个做菜的复杂过程(相同的构建),然后在不同的店铺进行实现(不同的表示).中餐往往 ...

  6. Ajax和JSON基础

    Ajax (核心是XMLHttpRequest对象) 1.XMLHttpRequest对象: request=new XMLHttpRequest()  支持Firefox opera Safari  ...

  7. 关于IE8以上 不引人css 症状

    不知道各位有没有体验过 这样的状况  在同一个文件夹中 <!DOCTYPE html> <html> <head> <meta charset="u ...

  8. 编程语言中的Namespace

    Namespace 1.C struct 2.C++(Pronounced 'see jia-jia' or 'see plus-plus') namespace 3.Python module(s) ...

  9. [CSS]下拉菜单

    原理:先让下拉菜单隐藏,鼠标移到的时候在显示出来 1>display 无动画效果,图片是秒出 2>opacity 有动画效果,我这里是1S出现,推荐配合绝对定位使用

  10. jquery获取iframe中的dom对象

    父窗口中操作iframe:$(window.frames["iframeChild"].document)    //假如iframe的id为iframeChild 在子窗口中操作 ...