Begin a common WordPress Backbone helpers file.
Moves the `wp.template` helper to `wp-backbone.js`. git-svn-id: http://core.svn.wordpress.org/trunk@24358 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
29
wp-includes/js/wp-backbone.js
Normal file
29
wp-includes/js/wp-backbone.js
Normal file
@@ -0,0 +1,29 @@
|
||||
window.wp = window.wp || {};
|
||||
|
||||
(function ($) {
|
||||
var template;
|
||||
/**
|
||||
* wp.template( id )
|
||||
*
|
||||
* Fetches a template by id.
|
||||
*
|
||||
* @param {string} id A string that corresponds to a DOM element with an id prefixed with "tmpl-".
|
||||
* For example, "attachment" maps to "tmpl-attachment".
|
||||
* @return {function} A function that lazily-compiles the template requested.
|
||||
*/
|
||||
template = wp.template = _.memoize(function ( id ) {
|
||||
var compiled,
|
||||
options = {
|
||||
evaluate: /<#([\s\S]+?)#>/g,
|
||||
interpolate: /\{\{\{([\s\S]+?)\}\}\}/g,
|
||||
escape: /\{\{([^\}]+?)\}\}(?!\})/g,
|
||||
variable: 'data'
|
||||
};
|
||||
|
||||
return function ( data ) {
|
||||
compiled = compiled || _.template( $( '#tmpl-' + id ).html(), null, options );
|
||||
return compiled( data );
|
||||
};
|
||||
});
|
||||
|
||||
}(jQuery));
|
||||
Reference in New Issue
Block a user