#

API Docs for: v2.11.1
Show: Inherited Protected Private Deprecated

# File: packages/ember-runtime/lib/mixins/controller.js

    import { Mixin, alias } from 'ember-metal';
    import ActionHandler from './action_handler';
    import ControllerContentModelAliasDeprecation from './controller_content_model_alias_deprecation';

    /**
      @class ControllerMixin
      @namespace Ember
      @uses Ember.ActionHandler
      @private
    */
    export default Mixin.create(ActionHandler, ControllerContentModelAliasDeprecation, {
      /* ducktype as a controller */
      isController: true,

      /**
        The object to which actions from the view should be sent.

        For example, when a Handlebars template uses the `{{action}}` helper,
        it will attempt to send the action to the view's controller's `target`.

        By default, the value of the target property is set to the router, and
        is injected when a controller is instantiated. This injection is applied
        as part of the application's initialization process. In most cases the
        `target` property will automatically be set to the logical consumer of
        actions for the controller.

        @property target
        @default null
        @public
      */
      target: null,

      store: null,

      /**
        The controller's current model. When retrieving or modifying a controller's
        model, this property should be used instead of the `content` property.

        @property model
        @public
       */
      model: null,

      /**
        @private
      */
      content: alias('model')

    });