本文整理汇总了TypeScript中aurelia-templating.ViewSlot.add方法的典型用法代码示例。如果您正苦于以下问题:TypeScript ViewSlot.add方法的具体用法?TypeScript ViewSlot.add怎么用?TypeScript ViewSlot.add使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类aurelia-templating.ViewSlot
的用法示例。
在下文中一共展示了ViewSlot.add方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: createController
// creates a controller given a html template string and a viewmodel instance.
function createController(template, viewModel, viewsRequireLifecycle?: boolean) {
let childContainer = container.createChild();
let viewFactory = viewCompiler.compile(template);
if (viewsRequireLifecycle !== undefined) {
for (let id in viewFactory.instructions) {
let targetInstruction = viewFactory.instructions[id];
for (let behaviorInstruction of targetInstruction.behaviorInstructions) {
if (behaviorInstruction.attrName === 'repeat') {
behaviorInstruction.viewFactory._viewsRequireLifecycle = viewsRequireLifecycle;
}
}
}
}
let metadata = new HtmlBehaviorResource();
function App() {
//
}
metadata.initialize(childContainer, App);
metadata.elementName = metadata.htmlName = 'app';
let controller = metadata.create(childContainer, BehaviorInstruction.dynamic(host, viewModel, viewFactory));
controller.automate();
viewSlot.removeAll();
viewSlot.add(controller.view);
return controller;
}
示例2: bind
/**
* Binds the replaceable to the binding context and override context.
* @param bindingContext The binding context.
* @param overrideContext An override context for binding.
*/
bind(bindingContext, overrideContext) {
if (this.view === null) {
this.view = (this.viewFactory as any).create();
this.viewSlot.add(this.view);
}
this.view.bind(bindingContext, overrideContext);
}
示例3: compile
compile(element: HTMLElement, fragment: Element | DocumentFragment | string, context: any, overrideContext: any = undefined) {
element.classList.remove('au-target');
let view = this.viewCompiler.compile(fragment, this.resources).create(this.container);
let viewSlot = new ViewSlot(element, true, undefined);
viewSlot.add(view);
viewSlot.bind(context, overrideContext);
viewSlot.attached();
return viewSlot;
}
示例4: ViewSlot
return this.viewEngine.loadViewFactory(templateUrl).then(x => {
let view = x.create(this.container);
let viewSlot = new ViewSlot(element, true, undefined);
viewSlot.add(view);
viewSlot.bind(ctx, undefined);
viewSlot.attached();
return viewSlot;
});
示例5: _show
/**
* @internal
*/
_show() {
if (this.showing) {
// Ensures the view is bound.
// It might not be the case when the if was unbound but not detached, then rebound.
// Typical case where this happens is nested ifs
if (!this.view.isBound) {
this.view.bind(this.bindingContext, this.overrideContext);
}
return;
}
if (this.view === null) {
this.view = (this.viewFactory as any).create();
}
if (!this.view.isBound) {
this.view.bind(this.bindingContext, this.overrideContext);
}
this.showing = true;
return this.viewSlot.add(this.view); // Promise or void
}