Ember.ApplicationInstance.BootOptions Class packages/ember-application/lib/system/application-instance.js:323
PUBLIC
Defined in: packages/ember-application/lib/system/application-instance.js:323
Module: ember-application
A list of boot-time configuration options for customizing the behavior of
an Ember.ApplicationInstance
.
This is an interface class that exists purely to document the available options; you do not need to construct it manually. Simply pass a regular JavaScript object containing the desired options into methods that require one of these options object:
1 |
MyApp.visit("/", { location: "none", rootElement: "#container" }); |
Not all combinations of the supported options are valid. See the documentation
on Ember.Application#visit
for the supported configurations.
Internal, experimental or otherwise unstable flags are marked as private.
document
Document
public
If present, render into the given Document
object instead of the
global window.document
object.
In practice, this is only useful in non-browser environment or in
non-interactive mode, because Ember's jQuery
dependency is
implicitly bound to the current document, causing event delegation
to not work properly when the app is rendered into a foreign
document object (such as an iframe's contentDocument
).
In non-browser mode, this could be a "Document
-like" object as
Ember only interact with a small subset of the DOM API in non-
interactive mode. While the exact requirements have not yet been
formalized, the SimpleDOM
library's implementation is known to
work.
Default: the global `document` object
isBrowser
boolean
public
Run in a full browser environment.
When this flag is set to false
, it will disable most browser-specific
and interactive features. Specifically:
It does not use
jQuery
to append the root view; therootElement
(either specified as a subsequent option or on the application itself) must already be anElement
in the givendocument
(as opposed to a string selector).It does not set up an
EventDispatcher
.It does not run any
Component
lifecycle hooks (such asdidInsertElement
).It sets the
location
option to"none"
. (If you would like to use the location adapter specified in the app's router instead, you can also specify{ location: null }
to specifically opt-out.)
Default: auto-detected
isInteractive
boolean
private
Interactive mode: whether we need to set up event delegation and invoke lifecycle callbacks on Components.
Default: auto-detected
jQuery
Object
private
Provide a specific instance of jQuery. This is useful in conjunction with
the document
option, as it allows you to use a copy of jQuery
that is
appropriately bound to the foreign document
(e.g. a jsdom).
This is highly experimental and support very incomplete at the moment.
Default: auto-detected
location
string
public
If present, overrides the router's location
property with this
value. This is useful for environments where trying to modify the
URL would be inappropriate.
Default: null
rootElement
String|Element
public
If present, overrides the application's rootElement
property on
the instance. This is useful for testing environment, where you
might want to append the root view to a fixture area.
In non-browser mode, because Ember does not have access to jQuery,
this options must be specified as a DOM Element
object instead of
a selector string.
See the documentation on Ember.Applications
's rootElement
for
details.
Default: null
shouldRender
boolean
public
Disable rendering completely.
When this flag is set to true
, it will disable the entire rendering
pipeline. Essentially, this puts the app into "routing-only" mode. No
templates will be rendered, and no Components will be created.
Default: true