ANGULAR帮助文档

一个只有码农看得懂的网站。

  • ANGULAR 帮助文档

    ANGULARJS: API: NG

    NG

    NG (CORE MODULE)

    The ng module is loaded by default when an AngularJS application is started. The module itself contains the essential components for an AngularJS application to function. The table below lists a high level breakdown of each of the services/factories, filters, directives and testing components available within this core module.

    模块组件

    FUNCTION

    名称描述
    angular.lowercase

    转换指定的字符串到小写。

    angular.uppercase

    Converts the specified string to uppercase.

    angular.forEach

    Invokes the iterator function once for each item in obj collection, which can be either an object or an array. The iterator function is invoked with iterator(value, key), where valueis the value of an object property or an array element and key is the object property key or array element index. Specifying a context for the function is optional.

    angular.extend

    Extends the destination object dst by copying all of the properties from the src object(s) to dst. You can specify multiple src objects.

    angular.noop

    A function that performs no operations. 这个函数在使用函数风格写代码时很有用。

         Function foo(callback) {       var result = calculateResult();       (callback || angular.noop)(result);     }
    angular.identity

    A function that returns its first argument. This function is useful when writing code in the functional style.

    angular.isUndefined

    检测引用是否未定义。

    angular.isDefined

    检测引用是否已定义。

    angular.isObject

    检测引用是否为一个Object. Unlike typeof in JavaScript, nulls are not considered to be objects. Note that JavaScript arrays are objects.

    angular.isString

    检测引用是否是一个 String.

    angular.isNumber

    检测引用是否是一个 Number.

    angular.isDate

    检测值是否为日期。

    angular.isArray

    检测引用是否为一个Array.

    angular.isFunction

    检测引用是否是一个 Function.

    angular.isElement

    检测引用是否为一个DOM元素(或是封装的jQuery元素)。

    angular.copy

    Creates a deep copy of source, which should be an object or an array.

    angular.equals

    Determines if two objects or two values are equivalent. Supports value types, regular expressions, arrays and objects.

    angular.bind

    Returns a function which calls function fn bound to self (self becomes the this forfn). You can supply optional args that are prebound to the function. This feature is also known as partial application, as distinguished from function currying.

    angular.toJson

    Serializes input into a JSON-formatted string. Properties with leading $$ characters will be stripped since angular uses this notation internally.

    angular.fromJson

    反序列化JSON字符串。

    angular.bootstrap

    Use this function to manually start up angular application.

    angular.injector

    Creates an injector function that can be used for retrieving services as well as for 依赖注入 (see 依赖注入).

    angular.element

    Wraps a raw DOM element or HTML string as a jQuery element.

    angular.module

    The angular.module is a global place for creating, registering and retrieving Angular modules. All modules (angular core or 3rd party) that should be available to an application must be registered using this mechanism.

    DIRECTIVE

    名称描述
    ngApp

    Use this directive to auto-bootstrap an AngularJS application. The ngApp directive designates the root element of the application and is typically placed near the root element of the page -例如 on the <body> or <html> tags.

    a

    Modifies the default behavior of the html A tag so that the default action is prevented when the href attribute is empty.

    ngHref

    Using Angular markup like {{hash}} in an href attribute will make the link go to the wrong URL if the user clicks it before Angular has a chance to replace the {{hash}} markup with its value. Until Angular replaces the markup the link will be broken and will most likely return a 404 error.

    ngSrc

    Using Angular markup like {{hash}} in a src attribute doesn't work right: The browser will fetch from the URL with the literal text {{hash}} until Angular replaces the expression inside{{hash}}. The ngSrc directive solves this problem.

    ngSrcset

    Using Angular markup like {{hash}} in a srcset attribute doesn't work right: The browser will fetch from the URL with the literal text {{hash}}until Angular replaces the expression inside{{hash}}. The ngSrcset directive solves this problem.

    ngDisabled

    The following markup will make the button enabled on Chrome/Firefox but not on IE8 and older IEs:

    <div ng-init="scope = { isDisabled: false }"> <button disabled="{{scope.isDisabled}}">Disabled</button></div>
    ngChecked

    HTML规范不要求浏览器对布尔型属性必须给出值,例如checked(它们存在表示true,不存在表示false)。 如果我们放置了一个Angular动态表达式到这样的属性上,在浏览器删除属性时绑定信息将会丢失。 The ngChecked directive solves this problem for the checked attribute. 这个指令不会被浏览器删除,并提供了一个永久的可靠的地方存放绑定信息。

    ngReadonly

    HTML规范不要求浏览器对布尔型属性必须给出值,例如readonly(它们存在表示true,不存在表示false)。 如果我们放置了一个Angular动态表达式到这样的属性上,在浏览器删除属性时绑定信息将会丢失。 The ngReadonly directive solves this problem for the readonly attribute. 这个指令不会被浏览器删除,并提供了一个永久的可靠的地方存放绑定信息。

    ngSelected

    HTML规范不要求浏览器对布尔型属性必须给出值,例如selected(它们存在表示true,不存在表示false)。 如果我们放置了一个Angular动态表达式到这样的属性上,在浏览器删除属性时绑定信息将会丢失。 The ngSelected directive solves this problem for the selected attribute. 这个指令不会被浏览器删除,并提供了一个永久的可靠的地方存放绑定信息。

    ngOpen

    HTML规范不要求浏览器对布尔型属性必须给出值,例如open(它们存在表示true,不存在表示false)。 如果我们放置了一个Angular动态表达式到这样的属性上,在浏览器删除属性时绑定信息将会丢失。 The ngOpen directive solves this problem for the open attribute. 这个指令不会被浏览器删除,并提供了一个永久的可靠的地方存放绑定信息。

    ngForm

    可嵌套的form指令别名。HTML不允许form元素嵌套。 It is useful to nest forms, for example if the validity of a sub-group of controls needs to be determined.

    form

    Directive that instantiatesFormController.

    textarea

    HTML textarea element control with angular data-binding. The data-binding and validation properties of this element are exactly the same as those of theinput element.

    input

    HTML input element control with angular data-binding. Input control follows HTML5 input types and polyfills the HTML5 validation behavior for older browsers.

    ngModel

    The ngModel directive binds an input,selecttextarea (or custom form control) to a property on the scope using NgModelController, which is created and exposed by this directive.

    ngChange

    Evaluate the given expression when the user changes the input. The expression is evaluated immediately, unlike the JavaScript onchange event which only triggers at the end of a change (usually, when the user leaves the form element or presses the return key). The expression is not evaluated when the value change is coming from the model.

    ngList

    Text input that converts between a delimited string and an array of strings. The delimiter can be a fixed string (by default a comma) or a regular expression.

    ngValue

    Binds the given expression to the value of input[select] or input[radio], so that when the element is selected, the ngModel of that element is set to the bound value.

    ngModelOptions

    Allows tuning how model updates are done. Using ngModelOptions you can specify a custom list of events that will trigger a model update and/or a debouncing delay so that the actual update only takes place when a timer expires; this timer will be reset after another change takes place.

    ngBind

    The ngBind attribute tells Angular to replace the text content of the specified HTML element with the value of a given expression, and to update the text content when the value of that expression changes.

    ngBindTemplate

    The ngBindTemplate directive specifies that the element text content should be replaced with the interpolation of the template in thengBindTemplate attribute. Unlike ngBind, the ngBindTemplate can contain multiple {{ }}expressions. This directive is needed since some HTML elements (such as TITLE and OPTION) cannot contain SPAN elements.

    ngBindHtml

    Creates a binding that will innerHTML the result of evaluating the expression into the current element in a secure way.  默认情况下, the innerHTML-ed content will be sanitized using the $sanitize service.  To utilize this functionality, ensure that $sanitizeis available, 例如,by including ngSanitize in your module's dependencies (not in core Angular.)  You may also bypass sanitization for values you know are safe. To do so, bind to an explicitly trusted value via $sce.trustAsHtml.  See the example under Strict Contextual Escaping (SCE).

    ngClass

    The ngClass directive allows you to dynamically set CSS classes on an HTML element by databinding an expression that represents all classes to be added.

    ngClassOdd

    The ngClassOdd and ngClassEven directives work exactly asngClass, except they work in conjunction with ngRepeat and take effect only on odd (even) rows.

    ngClassEven

    The ngClassOdd and ngClassEven directives work exactly asngClass, except they work in conjunction with ngRepeat and take effect only on odd (even) rows.

    ngCloak

    The ngCloak directive is used to prevent the Angular html template from being briefly displayed by the browser in its raw (uncompiled) form while your application is loading. Use this directive to avoid the undesirable flicker effect caused by the html template display.

    ngController

    The ngController directive attaches a controller class to the view. This is a key aspect of how angular supports the principles behind the Model-View-Controller design pattern.

    ngCsp

    Enables CSP (Content Security Policy) support.

    ngClick

    The ngClick directive allows you to specify custom behavior when an element is clicked.

    ngDblclick

    The ngDblclick directive allows you to 指定自定义行为到a dblclick事件上。

    ngMousedown

    The ngMousedown directive allows you to 指定自定义行为到mousedown事件上。

    ngMouseup

    指定自定义行为到mouseup事件上。

    ngMouseover

    指定自定义行为到mouseover事件上。

    ngMouseenter

    指定自定义行为到mouseenter事件上。

    ngMouseleave

    指定自定义行为到mouseleave事件上。

    ngMousemove

    指定自定义行为到mousemove事件上。

    ngKeydown

    指定自定义行为到keydown事件上。

    ngKeyup

    指定自定义行为到keyup事件上。

    ngKeypress

    指定自定义行为到keypress事件上。

    ngSubmit

    Enables binding Angular表达式s to onsubmit events.

    ngFocus

    指定自定义行为到focus事件上。

    ngBlur

    指定自定义行为到blur事件上。

    ngCopy

    指定自定义行为到copy事件上。

    ngCut

    为剪切事件指定自定义行为。

    ngPaste

    指定自定义行为到paste事件上。

    ngIf

    The ngIf directive removes or recreates a portion of the DOM tree based on an {expression}. If the expression assigned to ngIf evaluates to a false value then the element is removed from the DOM, otherwise a clone of the element is reinserted into the DOM.

    ngInclude

    Fetches, compiles and includes an external HTML fragment.

    ngInit

    The ngInit directive allows you to evaluate an expression in the current scope.

    ngNonBindable

    The ngNonBindable directive tells Angular not to compile or bind the contents of the current DOM element. This is useful if the element contains what appears to be Angular directives and bindings but which should be ignored by Angular. This could be the case if you have a site that displays snippets of code, for instance.

    ngPluralize

    ngPluralize is a directive that displays messages according to en-US localization rules. These rules are bundled with angular.js, but can be overridden (see Angular i18n dev guide). You configure ngPluralize directive by specifying the mappings between多元化条目and the strings to be displayed.

    ngRepeat

    The ngRepeat directive instantiates a template once per item from a collection. Each template instance gets its own scope, where the given loop variable is set to the current collection item, and $index is set to the item index or key.

    ngShow

    The ngShow directive shows or hides the given HTML element based on the expression provided to the ngShow attribute. The element is shown or hidden by removing or adding the ng-hide CSS class onto the element. The .ng-hide CSS class is predefined in AngularJS and sets the display style to none (using an !important flag). For CSP mode please add angular-csp.css to your html file (see ngCsp).

    ngHide

    The ngHide directive shows or hides the given HTML element based on the expression provided to the ngHide attribute. The element is shown or hidden by removing or adding the ng-hide CSS class onto the element. The .ng-hide CSS class is predefined in AngularJS and sets the display style to none (using an !important flag). For CSP mode please add angular-csp.css to your html file (see ngCsp).

    ngStyle

    The ngStyle directive allows you to set CSS style on an HTML element conditionally.

    ngSwitch

    The ngSwitch directive is used to conditionally swap DOM structure on your template based on a scope expression. Elements within ngSwitch but without ngSwitchWhen or ngSwitchDefault directives will be preserved at the location as specified in the template.

    ngTransclude

    Directive that marks the insertion point for the transcluded DOM of the nearest parent directive that uses transclusion.

    script

    Load the content of a <script> element into $templateCache, so that the template can be used by ngInclude,ngView, or directives. The type of the<script> element must be specified as text/ng-template, and a cache name for the template must be assigned through the element's id, which can then be used as a directive's templateUrl.

    select

    HTML SELECT element with angular data-binding.

    OBJECT

    名称描述
    angular.version

    An object that contains information about the current AngularJS version. This object has the following properties:

    TYPE

    名称描述
    angular.Module

    Interface for configuring angular modules.

    $cacheFactory.Cache

    A cache object used to store and retrieve data, primarily used by$http and the script directive to cache templates and other data.

    $compile.directive.Attributes

    A shared object between directive compile / linking functions which contains normalized DOM element attributes. The values reflect current binding state {{ }}. The normalization is needed since all of these are treated as equivalent in Angular:

    form.FormController

    FormController keeps track of all its controls and nested forms as well as the state of them, such as being valid/invalid or dirty/pristine.

    ngModel.NgModelController

    NgModelController provides API for the ng-model directive. The controller contains services for data-binding, validation, CSS updates, and value formatting and parsing. It purposefully does not contain any logic which deals with DOM rendering or listening to DOM events. Such DOM related logic should be provided by other directives which make use ofNgModelController for data-binding.

    $rootScope.Scope

    A root scope can be retrieved using the $rootScope key from the$injector. Child scopes are created using the$new() method. (Most scopes are created automatically when compiled HTML template is executed.)

    SERVICE

    名称描述
    $anchorScroll

    When called, it checks current value of $location.hash() and scrolls to the related element, according to rules specified inHtml5 spec.

    $animate

    The $animate service provides rudimentary DOM manipulation functions to insert, remove and move elements within the DOM, as well as adding and removing classes. This service is the core service used by the ngAnimate $animator service which provides high-level animation hooks for CSS and JavaScript.

    $cacheFactory

    Factory that constructs Cache objects and gives access to them.

    $templateCache

    The first time a template is used, it is loaded in the template cache for quick retrieval. You can load templates directly into the cache in a scripttag, or by consuming the$templateCache service directly.

    $compile

    Compiles an HTML string or DOM into a template and produces a template function, which can then be used to link scope and the template together.

    $controller

    $controller service is responsible for instantiating controllers.

    $document

    jQuery or jqLite wrapper for the browser's window.document object.

    $exceptionHandler

    Any uncaught exception in Angular表达式s is delegated to this service. The default implementation simply delegates to $log.error which logs it into the browser console.

    $filter

    Filters are used for formatting data displayed to the user.

    $http

    The $http service is a core Angular service that facilitates communication with the remote HTTP servers via the browser's XMLHttpRequestobject or via JSONP.

    $httpBackend

    HTTP backend used by the Service that delegates to XMLHttpRequest object or JSONP and deals with browser incompatibilities.

    $interpolate

    Compiles a string with markup into an interpolation function. This service is used by the HTML $compile service for data binding. See$interpolateProvider for configuring the interpolation markup.

    $interval

    Angular's wrapper for window.setInterval. The fn function is executed every delaymilliseconds.

    $locale

    $locale service provides localization rules for various Angular components. As of right now the only public api is:

    $location

    The $location service parses the URL in the browser address bar (based on thewindow.location) and makes the URL available to your application. Changes to the URL in the address bar are reflected into $location service and changes to $location are reflected into the browser address bar.

    $log

    Simple service for logging. Default implementation safely writes the message into the browser's console (if present).

    $parse

    Converts Angular expression into a function.

    $q

    A promise/deferred implementation inspired by Kris Kowal's Q.

    $rootElement

    The root element of Angular application. This is either the element where ngApp was declared or the element passed intoangular.bootstrap. The element represent the root element of application. It is also the location where the applications $injector service gets published, it can be retrieved using $rootElement.injector().

    $rootScope

    Every application has a single root scope. All other scopes are descendant scopes of the root scope. Scopes provide separation between the model and the view, via a mechanism for watching the model for changes. They also provide an event emission/broadcast and subscription facility. See thedeveloper guide on scopes.

    $sceDelegate

    $sceDelegate is a service that is used by the $sce service to provide Strict Contextual Escaping (SCE) services to AngularJS.

    $sce

    $sce is a service that provides Strict Contextual Escaping services to AngularJS.

    $timeout

    Angular's wrapper for window.setTimeout. The fn function is wrapped into a try/catch block and delegates any exceptions to$exceptionHandlerservice.

    $window

    A reference to the browser's window object. While windowis globally available in JavaScript, it causes testability problems, because it is a global variable. In angular we always refer to it through the$window service, so it may be overridden, removed or mocked for testing.

    PROVIDER

    名称描述
    $animateProvider

    Default implementation of $animate that doesn't perform any animations, instead just synchronously performs DOM updates and calls done() callbacks.

    $compileProvider
    $controllerProvider

    The $controller service is used by Angular to create new controllers.

    $filterProvider

    Filters are just functions which transform input to an output. However filters need to be Dependency Injected. To achieve this a filter definition consists of a factory function which is annotated with dependencies and is responsible for creating a filter function.

    $httpProvider

    Use $httpProvider to change the default behavior of the $http service.

    $interpolateProvider

    Used for configuring the interpolation markup. Defaults to {{ and }}.

    $locationProvider

    Use the $locationProvider to configure how the application deep linking paths are stored.

    $logProvider

    Use the $logProvider to configure how the application logs messages

    $parseProvider

    $parseProvider can be used for configuring the default behavior of the $parse service.

    $rootScopeProvider

    Provider for the $rootScope service.

    $sceDelegateProvider

    The $sceDelegateProvider provider allows developers to configure the $sceDelegate service.  This allows one to get/set the whitelists and blacklists used to ensure that the URLs used for sourcing Angular templates are safe.  Refer $sceDelegateProvider.resourceUrlWhitelistand$sceDelegateProvider.resourceUrlBlacklist

    $sceProvider

    The $sceProvider provider allows developers to configure the $sce service.

    • enable/disable Strict Contextual Escaping (SCE) in a module
    • override the default implementation with a custom delegate

    INPUT

    名称描述
    input[text]

    Standard HTML text input with angular data binding.

    input[date]

    目前的浏览器还不支持HTML5的日期输入控件,所以将使用文本输入。 在这种情况下,输入的文本必须符合ISO-8601的日期格式(yyyy-MM-dd)的校验规范,例如: 2009-01-06. 模型必须永远是一个Date对象。

    input[dateTimeLocal]

    Input with datetime validation and transformation. In browsers that do not yet support the HTML5 date input, a text element will be used. In that case, the text must be entered in a valid ISO-8601 local datetime format (yyyy-MM-ddTHH:mm), 例如: 2010-12-28T14:57. 模型必须永远是一个Date对象。

    input[time]

    Input with time validation and transformation. In browsers that do not yet support the HTML5 date input, a text element will be used. In that case, the text must be entered in a valid ISO-8601 local time format (HH:mm), 例如: 14:57. 模型必须是一个Date对象。 This binding will always output a Date object to the model of January 1, 1900, or local date new Date(0, 0, 1, HH, mm).

    input[week]

    Input with week-of-the-year validation and transformation to Date. In browsers that do not yet support the HTML5 week input, a text element will be used. In that case, the text must be entered in a valid ISO-8601 week format (yyyy-W##), 例如: 2013-W02. 模型必须永远是一个Date对象。

    input[month]

    Input with month validation and transformation. In browsers that do not yet support the HTML5 month input, a text element will be used. In that case, the text must be entered in a valid ISO-8601 month format (yyyy-MM), 例如: 2009-01. 模型必须永远是一个Date对象。 In the event the model is not set to the first of the month, the first of that model's month is assumed.

    input[number]

    Text input with number validation and transformation. Sets the number validation error if not a valid number.

    input[url]

    Text input with URL validation. Sets the url validation error key if the content is not a valid URL.

    input[email]

    Text input with email validation. Sets the email validation error key if not a valid email address.

    input[radio]

    HTML radio button.

    input[checkbox]

    HTML checkbox.

    FILTER

    名称描述
    Filter

    Selects a subset of items from array and returns it as a new array.

    currency

    Formats a number as a currency (ie $1,234.56). When no currency symbol is provided, default symbol for current locale is used.

    number

    Formats a number as text.

    date

    Formats date to a string based on the requested format.

    json

    Allows you to convert a JavaScript object into JSON string.

    lowercase

    Converts string to lowercase.

    uppercase

    Converts string to uppercase.

    limitTo

    Creates a new array or string containing only a specified number of elements. The elements are taken from either the beginning or the end of the source array or string, as specified by the value and sign (positive or negative) of limit.

    orderBy

    Orders a specified array by the expression predicate. It is ordered alphabetically for strings and numerically for numbers. 注意: if you notice numbers are not being sorted correctly, make sure they are actually being saved as numbers and not strings.