本文整理汇总了TypeScript中@ember/-internals/container.Registry类的典型用法代码示例。如果您正苦于以下问题:TypeScript Registry类的具体用法?TypeScript Registry怎么用?TypeScript Registry使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Registry类的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的TypeScript代码示例。
示例1: setupApplicationRegistry
export function setupApplicationRegistry(registry: Registry) {
registry.injection(
'service:-glimmer-environment',
'appendOperations',
'service:-dom-tree-construction'
);
registry.injection('renderer', 'env', 'service:-glimmer-environment');
// because we are using injections we can't use instantiate false
// we need to use bind() to copy the function so factory for
// association won't leak
registry.register('service:-dom-builder', {
create({ bootOptions }: { bootOptions: { _renderMode: string } }) {
let { _renderMode } = bootOptions;
switch (_renderMode) {
case 'serialize':
return serializeBuilder.bind(null);
case 'rehydrate':
return rehydrationBuilder.bind(null);
default:
return clientBuilder.bind(null);
}
},
});
registry.injection('service:-dom-builder', 'bootOptions', '-environment:main');
registry.injection('renderer', 'builder', 'service:-dom-builder');
registry.register(P`template:-root`, RootTemplate);
registry.injection('renderer', 'rootTemplate', P`template:-root`);
registry.register('renderer:-dom', InteractiveRenderer);
registry.register('renderer:-inert', InertRenderer);
if (hasDOM) {
registry.injection('service:-glimmer-environment', 'updateOperations', 'service:-dom-changes');
}
registry.register('service:-dom-changes', {
create({ document }: { document: Simple.Document }) {
return new DOMChanges(document);
},
});
registry.register('service:-dom-tree-construction', {
create({ document }: { document: Simple.Document }) {
let Implementation = hasDOM ? DOMTreeConstruction : NodeDOMTreeConstruction;
return new Implementation(document);
},
});
}
开发者ID:habdelra,项目名称:ember.js,代码行数:51,代码来源:setup-registry.ts
示例2: setupEngineRegistry
export function setupEngineRegistry(registry: Registry) {
registry.register('view:-outlet', OutletView);
registry.register('template:-outlet', OutletTemplate);
registry.injection('view:-outlet', 'template', 'template:-outlet');
registry.injection('service:-dom-changes', 'document', 'service:-document');
registry.injection('service:-dom-tree-construction', 'document', 'service:-document');
registry.register(P`template:components/-default`, ComponentTemplate);
registry.register('service:-glimmer-environment', Environment);
registry.register(P`template-compiler:main`, TemplateCompiler);
registry.injection('template', 'compiler', P`template-compiler:main`);
registry.optionsForType('helper', { instantiate: false });
registry.register('helper:loc', loc);
registry.register('component:-text-field', TextField);
registry.register('component:-text-area', TextArea);
registry.register('component:-checkbox', Checkbox);
registry.register('component:link-to', LinkToComponent);
if (!ENV._TEMPLATE_ONLY_GLIMMER_COMPONENTS) {
registry.register(P`component:-default`, Component);
}
}
开发者ID:habdelra,项目名称:ember.js,代码行数:29,代码来源:setup-registry.ts
示例3: setupEngineRegistry
export function setupEngineRegistry(registry: Registry) {
registry.register('view:-outlet', OutletView);
registry.register('template:-outlet', OutletTemplate);
registry.injection('view:-outlet', 'template', 'template:-outlet');
registry.injection('service:-dom-changes', 'document', 'service:-document');
registry.injection('service:-dom-tree-construction', 'document', 'service:-document');
registry.register(P`template:components/-default`, ComponentTemplate);
registry.register('service:-glimmer-environment', Environment);
registry.register(P`template-compiler:main`, TemplateCompiler);
registry.injection('template', 'compiler', P`template-compiler:main`);
registry.optionsForType('helper', { instantiate: false });
registry.register('helper:loc', loc);
registry.register('component:-text-field', TextField);
registry.register('component:-checkbox', Checkbox);
registry.register('component:link-to', LinkToComponent);
if (EMBER_GLIMMER_ANGLE_BRACKET_BUILT_INS) {
// Internal
// These are registered as CapCase because our internal tempaltes do not
// go through the dashify transform. As a nice bonus, it also makes it
// more difficult for users to invoke them by accident.
registry.register('component:TextField', TextField);
registry.register('component:Checkbox', Checkbox);
// Public
registry.register('component:input', Input);
registry.register('template:components/input', InputTemplate);
registry.register('component:textarea', TextArea);
} else {
registry.register('component:-text-area', TextArea);
}
if (!ENV._TEMPLATE_ONLY_GLIMMER_COMPONENTS) {
registry.register(P`component:-default`, Component);
}
}
开发者ID:mixonic,项目名称:ember.js,代码行数:47,代码来源:setup-registry.ts
注:本文中的@ember/-internals/container.Registry类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论