zoukankan      html  css  js  c++  java
  • [AngularJS] Angular 1.3 Anuglar hint

    Read More: http://www.linkplugapp.com/a/953215

    https://docs.google.com/document/d/1XXMvReO8-Awi1EZXAXS4PzDzdNvV6pGcuaF4Q9821Es/pub

    angular-hint helps us writing better Angular code and makes finding very common mistakes in our code base easier. For example, did it ever happen to you, that you developed your Angular app, you grabbed a module from somewhere, then you started using the directives that the module comes with, and no matter how much you followed the usage instructions, it simply didn’t work. And after one hour of debugging you found out that you forgot to add the module dependency to your application. Yikes!

    These modules are:

    Install and using angular-hint

    npm install angular-hint

    Once it’s installed, we can embed the source in our application right after Angular itself like this:

    <script type="path/to/angular/angular.js"></script>
    <script type="path/to/angular-hint/hint.js"></script>

    Next, we apply the ng-hint directive in order to actually use the angular-hintmodule:

    <body ng-app="myApp" ng-hint>
    </body>

    By defaultng-hint injects all the mentioned hint modules.

    However, if we don’t want to get controller related hints, but are interested in DOM related hints, we can restrict the use of hint modules by using the ng-hint-include directive instead.

    The following code only injects angular-hint-dom:

    <body ng-app="myApp" ng-hint-include="dom">
    </body>

    We can even define more than just one hint module if needed:

    <body ng-app="myApp" ng-hint-include="dom directives">
    </body>

    Module hints

    If you declared an module:

    angular.module('myAppDependency', []);

    but forgot to include into your main app:

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

    Now, instead of fiddling around for an hour to find out why myAppDependency’s directives aren’t picked up, angular-hint is telling us that we might missed something. Simply open your browsers console and you should see something like this:

    Angular Hint: Modules
      Module "myAppDependency" was created but never loaded.

    Controller hints

    One of these best practices is, when naming controllers, to suffix them with Controller instead of using short names like Ctrlangular-hint helps with that too. Let’s take a look what happens when we define a controller with a name that doesn’t have this suffix:

    angular.module('myApp', []).controller('AppCtrl', function () {
    
    });

    Having a controller registered like this, angular-hint gives us the following warning:

    Angular Hint: Controllers
      The best practice is to name controllers ending with 'Controller'.
      Check the name of 'AppCtrl'

    Directive hints

    Example where error might happens:

    <ul>
      <li ng-repaet="i in [1,2,3,4]">
        <!-- more dom goes here -->
      </li>
    </ul>

    However, when angular-hint is activated, we get the following very useful warning:

    Angular Hint: Directives
      There was an AngularJS error in LI element. 
      Found incorrect attribute "ng-repaet" try "ng-repeat"
  • 相关阅读:
    UDP通讯demo
    Git 修改已提交的commit注释
    git merge和git merge --no-ff的区别
    git常用命令
    阿里云域名证书申请流程
    IntelliJ IDEA常用快捷键总结
    宿主CentOS7环境下docker中rabbitMQ的安装
    宿主CentOS7环境下docker中nginx的安装
    docker常用命令
    CentOS7环境下docker安装
  • 原文地址:https://www.cnblogs.com/Answer1215/p/4084246.html
Copyright © 2011-2022 走看看