forerunnerdb
Version:
A NoSQL document store database for browsers and Node.js.
4,123 lines (976 loc) • 73.4 kB
HTML
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>JSDoc: Class: View</title>
<script src="scripts/prettify/prettify.js"> </script>
<script src="scripts/prettify/lang-css.js"> </script>
<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css">
<link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css">
</head>
<body>
<div id="main">
<h1 class="page-title">Class: View</h1>
<section>
<header>
<h2>View</h2>
</header>
<article>
<div class="container-overview">
<h4 class="name" id="View"><span class="type-signature"></span>new View<span class="signature">(name, query<span class="signature-attributes">opt</span>, options<span class="signature-attributes">opt</span>)</span><span class="type-signature"></span></h4>
<div class="description">
Creates a new view instance.
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>name</code></td>
<td class="type">
<span class="param-type">String</span>
</td>
<td class="attributes">
</td>
<td class="description last">The name of the view.</td>
</tr>
<tr>
<td class="name"><code>query</code></td>
<td class="type">
<span class="param-type">Object</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="description last">The view's query.</td>
</tr>
<tr>
<td class="name"><code>options</code></td>
<td class="type">
<span class="param-type">Object</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="description last">An options object.</td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="View.js.html">View.js</a>, <a href="View.js.html#line25">line 25</a>
</li></ul></dd>
</dl>
</div>
<h3 class="subsection-title">Methods</h3>
<ul><li><a href="#isLinked"><span class="type-signature">(static) </span>isLinked<span class="signature">()</span><span class="type-signature"> → {Boolean}</span></a></li><li><a href="#link"><span class="type-signature">(static) </span>link<span class="signature">(outputTargetSelector, templateSelector, options<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {<a href="View.html">View</a>}</span></a></li><li><a href="#unlink"><span class="type-signature">(static) </span>unlink<span class="signature">(outputTargetSelector, templateSelector)</span><span class="type-signature"> → {<a href="View.html">View</a>}</span></a></li><li><a href="#_triggerIndexOf"><span class="type-signature"></span>_triggerIndexOf<span class="signature">()</span><span class="type-signature"></span></a></li><li><a href="#addLinkIO"><span class="type-signature"></span>addLinkIO<span class="signature">()</span><span class="type-signature"></span></a></li><li><a href="#addTrigger"><span class="type-signature"></span>addTrigger<span class="signature">()</span><span class="type-signature"></span></a></li><li><a href="#count"><span class="type-signature"></span>count<span class="signature">()</span><span class="type-signature"> → {Number}</span></a></li><li><a href="#data"><span class="type-signature"></span>data<span class="signature">()</span><span class="type-signature"> → {<a href="Collection.html">Collection</a>}</span></a></li><li><a href="#data"><span class="type-signature"></span>data<span class="signature">()</span><span class="type-signature"> → {<a href="Collection.html">Collection</a>}</span></a></li><li><a href="#deferEmit"><span class="type-signature"></span>deferEmit<span class="signature">()</span><span class="type-signature"></span></a></li><li><a href="#distinct"><span class="type-signature"></span>distinct<span class="signature">(key, query<span class="signature-attributes">opt</span>, options<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {Array}</span></a></li><li><a href="#drop"><span class="type-signature"></span>drop<span class="signature">()</span><span class="type-signature"> → {boolean}</span></a></li><li><a href="#emit"><span class="type-signature"></span>emit<span class="signature">()</span><span class="type-signature"></span></a></li><li><a href="#ensureIndex"><span class="type-signature"></span>ensureIndex<span class="signature">()</span><span class="type-signature"> → {*}</span></a></li><li><a href="#filter"><span class="type-signature"></span>filter<span class="signature">(query, func, options<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {Array}</span></a></li><li><a href="#find"><span class="type-signature"></span>find<span class="signature">()</span><span class="type-signature"> → {Array}</span></a></li><li><a href="#findById"><span class="type-signature"></span>findById<span class="signature">()</span><span class="type-signature"> → {Array}</span></a></li><li><a href="#findOne"><span class="type-signature"></span>findOne<span class="signature">()</span><span class="type-signature"> → {Object}</span></a></li><li><a href="#findSub"><span class="type-signature"></span>findSub<span class="signature">()</span><span class="type-signature"> → {Array}</span></a></li><li><a href="#findSubOne"><span class="type-signature"></span>findSubOne<span class="signature">()</span><span class="type-signature"> → {Object}</span></a></li><li><a href="#from"><span class="type-signature"></span>from<span class="signature">(source, callback<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {*}</span></a></li><li><a href="#ignoreTriggers"><span class="type-signature"></span>ignoreTriggers<span class="signature">()</span><span class="type-signature"></span></a></li><li><a href="#indexOf"><span class="type-signature"></span>indexOf<span class="signature">()</span><span class="type-signature"> → {*}</span></a></li><li><a href="#insert"><span class="type-signature"></span>insert<span class="signature">()</span><span class="type-signature"></span></a></li><li><a href="#off"><span class="type-signature"></span>off<span class="signature">()</span><span class="type-signature"></span></a></li><li><a href="#on"><span class="type-signature"></span>on<span class="signature">()</span><span class="type-signature"></span></a></li><li><a href="#orderBy"><span class="type-signature"></span>orderBy<span class="signature">(val<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {*}</span></a></li><li><a href="#page"><span class="type-signature"></span>page<span class="signature">(val<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {*}</span></a></li><li><a href="#pageFirst"><span class="type-signature"></span>pageFirst<span class="signature">()</span><span class="type-signature"> → {*}</span></a></li><li><a href="#pageLast"><span class="type-signature"></span>pageLast<span class="signature">()</span><span class="type-signature"> → {*}</span></a></li><li><a href="#pageScan"><span class="type-signature"></span>pageScan<span class="signature">(val)</span><span class="type-signature"> → {*}</span></a></li><li><a href="#primaryKey"><span class="type-signature"></span>primaryKey<span class="signature">()</span><span class="type-signature"> → {String}</span></a></li><li><a href="#processTrigger"><span class="type-signature"></span>processTrigger<span class="signature">()</span><span class="type-signature"></span></a></li><li><a href="#queryAdd"><span class="type-signature"></span>queryAdd<span class="signature">(obj, overwrite, refresh<span class="signature-attributes">opt</span>)</span><span class="type-signature"></span></a></li><li><a href="#queryData"><span class="type-signature"></span>queryData<span class="signature">(query<span class="signature-attributes">opt</span>, options<span class="signature-attributes">opt</span>, refresh<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {*}</span></a></li><li><a href="#queryOptions"><span class="type-signature"></span>queryOptions<span class="signature">(options<span class="signature-attributes">opt</span>, refresh<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {*}</span></a></li><li><a href="#queryRemove"><span class="type-signature"></span>queryRemove<span class="signature">(obj, refresh<span class="signature-attributes">opt</span>)</span><span class="type-signature"></span></a></li><li><a href="#rebuildActiveBucket"><span class="type-signature"></span>rebuildActiveBucket<span class="signature">(orderBy<span class="signature-attributes">opt</span>)</span><span class="type-signature"></span></a></li><li><a href="#refresh"><span class="type-signature"></span>refresh<span class="signature">()</span><span class="type-signature"></span></a></li><li><a href="#remove"><span class="type-signature"></span>remove<span class="signature">()</span><span class="type-signature"></span></a></li><li><a href="#removeLinkIO"><span class="type-signature"></span>removeLinkIO<span class="signature">()</span><span class="type-signature"></span></a></li><li><a href="#removeTrigger"><span class="type-signature"></span>removeTrigger<span class="signature">()</span><span class="type-signature"></span></a></li><li><a href="#transform"><span class="type-signature"></span>transform<span class="signature">(obj)</span><span class="type-signature"> → {*}</span></a></li><li><a href="#update"><span class="type-signature"></span>update<span class="signature">()</span><span class="type-signature"></span></a></li><li><a href="#updateById"><span class="type-signature"></span>updateById<span class="signature">()</span><span class="type-signature"></span></a></li><li><a href="#willTrigger"><span class="type-signature"></span>willTrigger<span class="signature">()</span><span class="type-signature"></span></a></li></ul>
<h4 class="name" id=".isLinked"><span class="type-signature">(static) </span>isLinked<span class="signature">()</span><span class="type-signature"> → {Boolean}</span></h4>
<div class="description">
Checks if the instance is data-bound to any DOM elements.
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="AutoBind.js.html">AutoBind.js</a>, <a href="AutoBind.js.html#line586">line 586</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
True if linked, false if not.
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Boolean</span>
</dd>
</dl>
<h4 class="name" id=".link"><span class="type-signature">(static) </span>link<span class="signature">(outputTargetSelector, templateSelector, options<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {<a href="View.html">View</a>}</span></h4>
<div class="description">
Data-binds the view data to the elements matched by the passed selector.
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>outputTargetSelector</code></td>
<td class="type">
<span class="param-type">String</span>
</td>
<td class="attributes">
</td>
<td class="description last">The jQuery element selector to select the element
into which the data-bound rendered items will be placed. All existing HTML will be
removed from this element.</td>
</tr>
<tr>
<td class="name"><code>templateSelector</code></td>
<td class="type">
<span class="param-type">String</span>
|
<span class="param-type">Object</span>
</td>
<td class="attributes">
</td>
<td class="description last">This can either be a jQuery selector identifying
which template element to get the template HTML from that each item in the view's data
will use when rendering to the screen, or you can pass an object with a template key
containing a string that represents the HTML template such as:
{ template: '<div>{{:name}}</div>' }</td>
</tr>
<tr>
<td class="name"><code>options</code></td>
<td class="type">
<span class="param-type">Object</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="description last">An options object.wd</td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="AutoBind.js.html">AutoBind.js</a>, <a href="AutoBind.js.html#line596">line 596</a>
</li></ul></dd>
<dt class="tag-see">See:</dt>
<dd class="tag-see">
<ul>
<li>unlink</li>
</ul>
</dd>
</dl>
<h5>Returns:</h5>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type"><a href="View.html">View</a></span>
</dd>
</dl>
<h4 class="name" id=".unlink"><span class="type-signature">(static) </span>unlink<span class="signature">(outputTargetSelector, templateSelector)</span><span class="type-signature"> → {<a href="View.html">View</a>}</span></h4>
<div class="description">
Removes a previously set-up data-binding via the link() method.
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>outputTargetSelector</code></td>
<td class="type">
<span class="param-type">String</span>
</td>
<td class="description last">The jQuery target selector.</td>
</tr>
<tr>
<td class="name"><code>templateSelector</code></td>
<td class="type">
<span class="param-type">String</span>
</td>
<td class="description last">The jQuery template selector.</td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="AutoBind.js.html">AutoBind.js</a>, <a href="AutoBind.js.html#line620">line 620</a>
</li></ul></dd>
<dt class="tag-see">See:</dt>
<dd class="tag-see">
<ul>
<li>link</li>
</ul>
</dd>
</dl>
<h5>Returns:</h5>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type"><a href="View.html">View</a></span>
</dd>
</dl>
<h4 class="name" id="_triggerIndexOf"><span class="type-signature"></span>_triggerIndexOf<span class="signature">()</span><span class="type-signature"></span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="View.js.html">View.js</a>, <a href="View.js.html#line871">line 871</a>
</li></ul></dd>
<dt class="tag-see">See:</dt>
<dd class="tag-see">
<ul>
<li>Mixin.Triggers::_triggerIndexOf()</li>
</ul>
</dd>
</dl>
<h4 class="name" id="addLinkIO"><span class="type-signature"></span>addLinkIO<span class="signature">()</span><span class="type-signature"></span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="View.js.html">View.js</a>, <a href="View.js.html#line843">line 843</a>
</li></ul></dd>
<dt class="tag-see">See:</dt>
<dd class="tag-see">
<ul>
<li>Mixin.Triggers::addLinkIO()</li>
</ul>
</dd>
</dl>
<h4 class="name" id="addTrigger"><span class="type-signature"></span>addTrigger<span class="signature">()</span><span class="type-signature"></span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="View.js.html">View.js</a>, <a href="View.js.html#line822">line 822</a>
</li></ul></dd>
<dt class="tag-see">See:</dt>
<dd class="tag-see">
<ul>
<li>Mixin.Triggers::addTrigger()</li>
</ul>
</dd>
</dl>
<h4 class="name" id="count"><span class="type-signature"></span>count<span class="signature">()</span><span class="type-signature"> → {Number}</span></h4>
<div class="description">
Returns the number of documents currently in the view.
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="View.js.html">View.js</a>, <a href="View.js.html#line1339">line 1339</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Number</span>
</dd>
</dl>
<h4 class="name" id="data"><span class="type-signature"></span>data<span class="signature">()</span><span class="type-signature"> → {<a href="Collection.html">Collection</a>}</span></h4>
<div class="description">
Returns the non-transformed data the view holds as a collection
reference.
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="View.js.html">View.js</a>, <a href="View.js.html#line1396">line 1396</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
The non-transformed collection reference.
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type"><a href="Collection.html">Collection</a></span>
</dd>
</dl>
<h4 class="name" id="data"><span class="type-signature"></span>data<span class="signature">()</span><span class="type-signature"> → {<a href="Collection.html">Collection</a>}</span></h4>
<div class="description">
Gets the module's internal data collection.
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="View.js.html">View.js</a>, <a href="View.js.html#line514">line 514</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type"><a href="Collection.html">Collection</a></span>
</dd>
</dl>
<h4 class="name" id="deferEmit"><span class="type-signature"></span>deferEmit<span class="signature">()</span><span class="type-signature"></span></h4>
<div class="description">
Emits an event.
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="View.js.html">View.js</a>, <a href="View.js.html#line794">line 794</a>
</li></ul></dd>
<dt class="tag-see">See:</dt>
<dd class="tag-see">
<ul>
<li>Mixin.Events::deferEmit()</li>
</ul>
</dd>
</dl>
<h4 class="name" id="distinct"><span class="type-signature"></span>distinct<span class="signature">(key, query<span class="signature-attributes">opt</span>, options<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {Array}</span></h4>
<div class="description">
Find the distinct values for a specified field across a single collection and
returns the results in an array.
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>key</code></td>
<td class="type">
<span class="param-type">String</span>
</td>
<td class="attributes">
</td>
<td class="description last">The field path to return distinct values for e.g. "person.name".</td>
</tr>
<tr>
<td class="name"><code>query</code></td>
<td class="type">
<span class="param-type">Object</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="description last">The query to use to filter the documents used to return values from.</td>
</tr>
<tr>
<td class="name"><code>options</code></td>
<td class="type">
<span class="param-type">Object</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="description last">The query options to use when running the query.</td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="View.js.html">View.js</a>, <a href="View.js.html#line806">line 806</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Array</span>
</dd>
</dl>
<h4 class="name" id="drop"><span class="type-signature"></span>drop<span class="signature">()</span><span class="type-signature"> → {boolean}</span></h4>
<div class="description">
Drops a view and all it's stored data from the database.
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="View.js.html">View.js</a>, <a href="View.js.html#line879">line 879</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
True on success, false on failure.
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">boolean</span>
</dd>
</dl>
<h4 class="name" id="emit"><span class="type-signature"></span>emit<span class="signature">()</span><span class="type-signature"></span></h4>
<div class="description">
Emits an event.
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="View.js.html">View.js</a>, <a href="View.js.html#line786">line 786</a>
</li></ul></dd>
<dt class="tag-see">See:</dt>
<dd class="tag-see">
<ul>
<li>Mixin.Events::emit()</li>
</ul>
</dd>
</dl>
<h4 class="name" id="ensureIndex"><span class="type-signature"></span>ensureIndex<span class="signature">()</span><span class="type-signature"> → {*}</span></h4>
<div class="description">
Creates an index on the view.
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="View.js.html">View.js</a>, <a href="View.js.html#line760">line 760</a>
</li></ul></dd>
<dt class="tag-see">See:</dt>
<dd class="tag-see">
<ul>
<li>Collection::ensureIndex()</li>
</ul>
</dd>
</dl>
<h5>Returns:</h5>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">*</span>
</dd>
</dl>
<h4 class="name" id="filter"><span class="type-signature"></span>filter<span class="signature">(query, func, options<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {Array}</span></h4>
<div class="description">
Executes a method against each document that matches query and returns an
array of documents that may have been modified by the method.
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>query</code></td>
<td class="type">
<span class="param-type">Object</span>
</td>
<td class="attributes">
</td>
<td class="description last">The query object.</td>
</tr>
<tr>
<td class="name"><code>func</code></td>
<td class="type">
<span class="param-type">function</span>
</td>
<td class="attributes">
</td>
<td class="description last">The method that each document is passed to. If this method
returns false for a particular document it is excluded from the results.</td>
</tr>
<tr>
<td class="name"><code>options</code></td>
<td class="type">
<span class="param-type">Object</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="description last">Optional options object.</td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="View.js.html">View.js</a>, <a href="View.js.html#line1387">line 1387</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Array</span>
</dd>
</dl>
<h4 class="name" id="find"><span class="type-signature"></span>find<span class="signature">()</span><span class="type-signature"> → {Array}</span></h4>
<div class="description">
Queries the view data.
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="View.js.html">View.js</a>, <a href="View.js.html#line462">line 462</a>
</li></ul></dd>
<dt class="tag-see">See:</dt>
<dd class="tag-see">
<ul>
<li>Collection::find()</li>
</ul>
</dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
The result of the find query.
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Array</span>
</dd>
</dl>
<h4 class="name" id="findById"><span class="type-signature"></span>findById<span class="signature">()</span><span class="type-signature"> → {Array}</span></h4>
<div class="description">
Queries the view data by specific id.
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="View.js.html">View.js</a>, <a href="View.js.html#line480">line 480</a>
</li></ul></dd>
<dt class="tag-see">See:</dt>
<dd class="tag-see">
<ul>
<li>Collection::findById()</li>
</ul>
</dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
The result of the find query.
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Array</span>
</dd>
</dl>
<h4 class="name" id="findOne"><span class="type-signature"></span>findOne<span class="signature">()</span><span class="type-signature"> → {Object}</span></h4>
<div class="description">
Queries the view data for a single document.
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="View.js.html">View.js</a>, <a href="View.js.html#line471">line 471</a>
</li></ul></dd>
<dt class="tag-see">See:</dt>
<dd class="tag-see">
<ul>
<li>Collection::findOne()</li>
</ul>
</dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
The result of the find query.
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Object</span>
</dd>
</dl>
<h4 class="name" id="findSub"><span class="type-signature"></span>findSub<span class="signature">()</span><span class="type-signature"> → {Array}</span></h4>
<div class="description">
Queries the view data in a sub-array.
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="View.js.html">View.js</a>, <a href="View.js.html#line489">line 489</a>
</li></ul></dd>
<dt class="tag-see">See:</dt>
<dd class="tag-see">
<ul>
<li>Collection::findSub()</li>
</ul>
</dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
The result of the find query.
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Array</span>
</dd>
</dl>
<h4 class="name" id="findSubOne"><span class="type-signature"></span>findSubOne<span class="signature">()</span><span class="type-signature"> → {Object}</span></h4>
<div class="description">
Queries the view data in a sub-array and returns first match.
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="View.js.html">View.js</a>, <a href="View.js.html#line502">line 502</a>
</li></ul></dd>
<dt class="tag-see">See:</dt>
<dd class="tag-see">
<ul>
<li>Collection::findSubOne()</li>
</ul>
</dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
The result of the find query.
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Object</span>
</dd>
</dl>
<h4 class="name" id="from"><span class="type-signature"></span>from<span class="signature">(source, callback<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {*}</span></h4>
<div class="description">
Sets the source from which the view will assemble its data.
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>source</code></td>
<td class="type">
<span class="param-type"><a href="Collection.html">Collection</a></span>
|
<span class="param-type"><a href="View.html">View</a></span>
</td>
<td class="attributes">
</td>
<td class="description last">The source to use to assemble view data.</td>
</tr>
<tr>
<td class="name"><code>callback</code></td>
<td class="type">
<span class="param-type">function</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="description last">A callback method.</td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="View.js.html">View.js</a>, <a href="View.js.html#line525">line 525</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
If no argument is passed, returns the current value of from,
otherwise returns itself for chaining.
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">*</span>
</dd>
</dl>
<h4 class="name" id="ignoreTriggers"><span class="type-signature"></span>ignoreTriggers<span class="signature">()</span><span class="type-signature"></span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="View.js.html">View.js</a>, <a href="View.js.html#line836">line 836</a>
</li></ul></dd>
<dt class="tag-see">See:</dt>
<dd class="tag-see">
<ul>
<li>Mixin.Triggers::ignoreTriggers()</li>
</ul>
</dd>
</dl>
<h4 class="name" id="indexOf"><span class="type-signature"></span>indexOf<span class="signature">()</span><span class="type-signature"> → {*}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="View.js.html">View.js</a>, <a href="View.js.html#line1404">line 1404</a>
</li></ul></dd>
<dt class="tag-see">See:</dt>
<dd class="tag-see">
<ul>
<li>Collection.indexOf</li>
</ul>
</dd>
</dl>
<h5>Returns:</h5>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">*</span>
</dd>
</dl>
<h4 class="name" id="insert"><span class="type-signature"></span>insert<span class="signature">()</span><span class="type-signature"></span></h4>
<div class="description">
Executes an insert against the view's underlying data-source.
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="View.js.html">View.js</a>, <a href="View.js.html#line425">line 425</a>
</li></ul></dd>
<dt class="tag-see">See:</dt>
<dd class="tag-see">
<ul>
<li>Collection::insert()</li>
</ul>
</dd>
</dl>
<h4 class="name" id="off"><span class="type-signature"></span>off<span class="signature">()</span><span class="type-signature"></span></h4>
<div class="description">
Cancels an event listener.
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="View.js.html">View.js</a>, <a href="View.js.html#line778">line 778</a>
</li></ul></dd>
<dt class="tag-see">See:</dt>
<dd class="tag-see">
<ul>
<li>Mixin.Events::off()</li>
</ul>
</dd>
</dl>
<h4 class="name" id="on"><span class="type-signature"></span>on<span class="signature">()</span><span class="type-signature"></span></h4>
<div class="description">
/**
Listens for an event.
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="View.js.html">View.js</a>, <a href="View.js.html#line770">line 770</a>
</li></ul></dd>
<dt class="tag-see">See:</dt>
<dd class="tag-see">
<ul>
<li>Mixin.Events::on()</li>
</ul>
</dd>
</dl>
<h4 class="name" id="orderBy"><span class="type-signature"></span>orderBy<span class="signature">(val<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {*}</span></h4>
<div class="description">
Gets / sets the orderBy clause in the query options for the view.
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>val</code></td>
<td class="type">
<span class="param-type">Object</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="description last">The order object.</td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="View.js.html">View.js</a>, <a href="View.js.html#line1114">line 1114</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">*</span>
</dd>
</dl>
<h4 class="name" id="page"><span class="type-signature"></span>page<span class="signature">(val<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {*}</span></h4>
<div class="description">
Gets / sets the page clause in the query options for the view.
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Attributes</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>val</code></td>
<td class="type">
<span class="param-type">Number</span>
</td>
<td class="attributes">
<optional><br>
</td>
<td class="description last">The page number to change to (zero index).</td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="View.js.html">View.js</a>, <a href="View.js.html#line1131">line 1131</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">*</span>
</dd>
</dl>
<h4 class="name" id="pageFirst"><span class="type-signature"></span>pageFirst<span class="signature">()</span><span class="type-signature"> → {*}</span></h4>
<div class="description">
Jump to the first page in the data set.
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="View.js.html">View.js</a>, <a href="View.js.html#line1151">line 1151</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">*</span>
</dd>
</dl>
<h4 class="name" id="pageLast"><span class="type-signature"></span>pageLast<span class="signature">()</span><span class="type-signature"> → {*}</span></h4>
<div class="description">
Jump to the last page in the data set.
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="View.js.html">View.js</a>, <a href="View.js.html#line1159">line 1159</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">*</span>
</dd>
</dl>
<h4 class="name" id="pageScan"><span class="type-signature"></span>pageScan<span class="signature">(val)</span><span class="type-signature"> → {*}</span></h4>
<div class="description">
Move forward or backwards in the data set pages by passing a positive
or negative integer of the number of pages to move.
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>val</code></td>
<td class="type">
<span class="param-type">Number</span>
</td>
<td class="description last">The number of pages to move.</td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="View.js.html">View.js</a>, <a href="View.js.html#line1172">line 1172</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">*</span>
</dd>
</dl>
<h4 class="name" id="primaryKey"><span class="type-signature"></span>primaryKey<span class="signature">()</span><span class="type-signature"> → {String}</span></h4>
<div class="description">
Gets the primary key for this view from the assigned collection.
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class