• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

TypeScript maquette.h函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了TypeScript中maquette/maquette.h函数的典型用法代码示例。如果您正苦于以下问题:TypeScript h函数的具体用法?TypeScript h怎么用?TypeScript h使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了h函数的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的TypeScript代码示例。

示例1: getTabChildVNode

				function getTabChildVNode(tab: TabbedChild): (VNode | string)[] {
					const tabListeners = getTabListeners(tabbed, tab);
					return [
						h('div.tab-label', { onclick: tabListeners.onclickTabListener }, [ tab.state.label ]),
						/* TODO: only show the close when the tab state is closable */
						h('div.tab-close', { onclick: tabListeners.onclickTabCloseListener }, [ 'X' ])
					];
				}
开发者ID:benpope82,项目名称:widgets,代码行数:8,代码来源:createTabbedMixin.ts


示例2: getTabChildVNode

				function getTabChildVNode(tab: TabbedChild): (VNode | string)[] {
					const tabListeners = getTabListeners(tabbed, tab);
					const nodes = [ h('div.tab-label', { onclick: tabListeners.onclickTabListener }, [ tab.state.label ]) ];
					if (tab.state.closeable) {
						nodes.push(h('div.tab-close', { onclick: tabListeners.onclickTabCloseListener }, [ 'X' ]));
					}
					return nodes;
				}
开发者ID:danice,项目名称:widgets,代码行数:8,代码来源:createTabbedMixin.ts


示例3: h

						h('div.tab-close', { onclick: tabListeners.onclickTabCloseListener }, [ 'X' ])
					];
				}

				/* We need to generate a set of VDom the represents the buttons */
				/* TODO: Allow the location of the tab bar to be set (top/left/bottom/right) */
				const tabs: VNode[] = [];
				const childrenNodes: VNode[] = [];
				tabbed.children.forEach((tab, key) => {
					if (tab === activeTab) {
						const activeTabVNode = tab.render();
						activeTabVNode.properties.classes['visible'] = true;
						childrenNodes.push(activeTabVNode);
						tabs.push(h(tabbed.tagNames.tab + '.active', { key: tab }, getTabChildVNode(tab)));
					}
					else {
						/* TODO: Having trouble changing the classes on the subnodes, so once visible always visible,
						 * The only choice was to just omit non visible nodes from the VDom, though I am not sure
						 * this makes a lot of sense, because with a big render, it is a lot of DOM to add and remove
						 */
						tabs.push(h(tabbed.tagNames.tab, { key: tab }, getTabChildVNode(tab)));
					}
				});

				return [ h(tabbed.tagNames.tabBar, tabs), ...childrenNodes ];
			}
		}
	}) as TabbedMixinFactory;

export default createTabbedMixin;
开发者ID:benpope82,项目名称:widgets,代码行数:30,代码来源:createTabbedMixin.ts


示例4: destroy

	Attached = 1,
	Detached
};

interface ProjectorData {
	projector?: MaquetteProjector;
	root?: Element;
	state?: ProjectorState;
	attachHandle?: Handle;
	boundRender?: () => VNode;
}

const projectorDataMap = new WeakMap<Projector, ProjectorData>();

const noopHandle = { destroy() { } };
const emptyVNode = h('div');
const noopVNode = function(): VNode { return emptyVNode; };

export const createProjector: ProjectorFactory = compose<any, ProjectorOptions>({
		getNodeAttributes(overrides?: VNodeProperties): VNodeProperties {
			/* TODO: This is the same logic as createCachedRenderMixin, merge somehow */
			const projector: Projector = this;
			const props: VNodeProperties = {};
			for (let key in projector.listeners) {
				props[key] = projector.listeners[key];
			}
			const classes: { [index: string]: boolean; } = {};
			if (projector.classes) {
				projector.classes.forEach((c) => classes[c] = true);
			}
			props.classes = classes;
开发者ID:kitsonk,项目名称:widgets,代码行数:31,代码来源:projector.ts


示例5: h

						h('div.tab-close', { onclick: tabListeners.onclickTabCloseListener }, [ 'X' ])
					];
				}

				/* We need to generate a set of VDom the represents the buttons */
				/* TODO: Allow the location of the tab bar to be set (top/left/bottom/right) */
				const tabs: VNode[] = [];
				const childrenNodes: VNode[] = [];
				tabbed.children.forEach((tab, key) => {
					if (tab === activeTab) {
						const activeTabVNode = tab.render();
						activeTabVNode.properties.classes['visible'] = true;
						childrenNodes.push(activeTabVNode);
						tabs.push(h(tabbed.tagNames.tab + '.active', { key: tab }, getTabChildVNode(tab)));
					}
					else {
						/* TODO: Having trouble changing the classes on the subnodes, so once visible always visible,
						 * The only choice was to just omit non visible nodes from the VDom, though I am not sure
						 * this makes a lot of sense, because with a big render, it is a lot of DOM to add and remove
						 */
						tabs.push(h(tabbed.tagNames.tab, { key: tab }, getTabChildVNode(tab)));
					}
				});

				return [ h(tabbed.tagNames.tabBar, tabs) ].concat(childrenNodes);
			}
		}
	});

export default createTabbedMixin;
开发者ID:kitsonk,项目名称:widgets,代码行数:30,代码来源:createTabbedMixin.ts


示例6: render

function render(): VNode {
	return h('dojo-panel-tabbed', {
		id: 'tabbed-panel'
	}, [
		h('ul', {}, [
			h('li', { classes: { active: false }, key: panel1 }, [ h('div.tab-label', [ 'tab 1' ]), h('div.tab-close', [ 'X' ]) ]),
			h('li', { classes: { active: closed }, key: panel2 }, [ h('div.tab-label', [ 'tab 2' ]), h('div.tab-close', [ 'X' ]) ]),
			h('li', { classes: { active: false }, key: panel3 }, [ h('div.tab-label', [ 'tab 3' ]), h('div.tab-close', [ 'X' ]) ]),
			closed
				? undefined
				: h('li', { classes: { active: !closed }, key: panel4 }, [ h('div.tab-label', [ 'tab 4' ]), h('div.tab-close', [ 'X' ]) ])
		]),
		h('div.panels', [
			undefined,
			closed
				? h('dojo-panel', { classes: { visible: true }, key: panel2 }, [ h('div#bar', [ 'tab 2' ]) ])
				: undefined,
			undefined,
			closed
				? undefined
				: h('dojo-panel', { classes: { visible: true }, key: panel4 }, [ h('div#bar', [ 'tab 4' ]) ])
		])
	]);
}
开发者ID:novemberborn,项目名称:widgets,代码行数:24,代码来源:scratch.ts


示例7: isRenderable

	parent?: ParentMixin<Renderable>;
}

export type Renderable = Destroyable & RenderableMixin;

export interface RenderableFactory extends ComposeFactory<Renderable, RenderableOptions> { }

export function isRenderable(value: any): value is Renderable {
	return value && typeof value.render === 'function';
}

const createRenderable: RenderableFactory = compose<RenderableMixin, RenderableOptions>({
		render() {
			const renderable: Renderable = this;
			return h(renderable.tagName);
		},

		tagName: 'div'
	}, (instance, options) => {
		if (options) {
			const { tagName, render, parent } = options;
			instance.tagName = tagName || instance.tagName;
			instance.render = render || instance.render;
			if (parent) {
				parent.append(instance);
			}
		}
	})
	.mixin(createDestroyable);
开发者ID:novemberborn,项目名称:widgets,代码行数:29,代码来源:createRenderable.ts


示例8: h

		renderable.render = () => {
			return h('h1', [ 'Greetings' ]);
		};
开发者ID:novemberborn,项目名称:widgets,代码行数:3,代码来源:createRenderable.ts



注:本文中的maquette/maquette.h函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
TypeScript markdown-it.default函数代码示例发布时间:2022-05-25
下一篇:
TypeScript maquette.createProjector函数代码示例发布时间:2022-05-25
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap