Skip to content

0.2.0 Templates

Ivan S Glazunov edited this page Feb 20, 2015 · 9 revisions

import Templates = require('osws-templates');

.isSync

(argument: any) => boolean;

Templates.isSync(function() {}); // true;
Templates.isSync(function(callback) {}); // false;
Templates.isSync(function(callback, other) {}); // false;
Templates.isSync(function(any, args) {}); // false;

.isAsync

(argument: any) => boolean;

Templates.isAsync(function() {}); // false;
Templates.isAsync(function(callback) {}); // true;
Templates.isAsync(function(callback, other) {}); // false;
Templates.isAsync(function(any, args) {}); // false;

.dataRender

(data: TData, callback: TCallback) => void;

The method of synchronous/asynchronous conversion TData in string values. Is used when rendering.

.wrapMethod

(instance: Prototype, method: Function) => Function;

Adds a method options __templatesInstance as reference to an instance of the Prototype.

.regExpSearch

(data: string, reg: RegExp) => string[][];

._selectorRegExp

RegExp

TSelector RegExp

.parseSelector

(_attributes: IAttributes, selector: TSelector) => void;

Parse selector to IAttributes format.

All sended attributes overlap, not added. Exception - classes as .class-name-1.class-name-2, are added, do not overlap.

._stringTemplate

(string: string, context: Object, callback: TCallback) => void;

By default - wrap around method _.template.

var context: IContext = {
	type: 'name',
	data: function(callback) { callback('Example'); },
	person: {
		whose: function() { return 'my'; }
	}
};
Templates._stringTemplate('<%= person.whose %> <%= type %>: <%= name %>', context, console.log);
// my name: Example
You can override this method of their own
Templates._stringTemplate = function(string: string, context: Object, callback: (result: any) => any) {
	callback(string);
}
Clone this wiki locally