##// END OF EJS Templates
Added @prototype decorator
cin -
r24:9b77ac3bf8f2 v1.0.0-rc11 default
parent child
Show More
@@ -240,3 +240,18 export function bind(params: NodeBindSpe
240 240 };
241 241 }
242 242 }
243
244 /** Создает в прототипе указанное свойство со значение `undefined`, данный
245 * декоратор следует использовать для свойств, у которых нет значения по-умолчанию
246 * и они не могут быть `null | undefined`
247 */
248 export function prototype(): (p: any, name: string) => void;
249 /** Создает в прототипе свойство с указанным значением.
250 * @param value Значение, которое будет указано в прототипе
251 */
252 export function prototype<T>(value: T): <P extends { [m in K]: T }, K extends keyof P>(p: P, name: K) => void;
253 export function prototype<T>(value?: T) {
254 return <P extends { [m in K]: T }, K extends keyof P>(p: P, name: K) => {
255 p[name] = value as any;
256 };
257 }
@@ -1,9 +1,11
1 1 import { _Widget } from "./WidgetContext";
2 2 import { MapOf } from "@implab/core-amd/interfaces";
3 import { prototype } from "../declare";
3 4
4 5 /** Special widget used to create a document fragment */
5 6 export class DjxFragment implements _Widget {
6 7
8 @prototype()
7 9 domNode: Node;
8 10
9 11 containerNode?: Node;
General Comments 0
You need to be logged in to leave comments. Login now