在我的模板中,我有一个 div,想将其用作工具提示。当我选择一个模型时,工具提示显示,然后我使用 tether 将其放置在正确的位置上。如果我在设置显示元素后立即设置 tether,那么它的大小不会被正确计算,而且 Tether 无法正确限制约束条件。如果我使用 setTimeout 进行防抖处理,就可以将其放在正确的位置上,但那感觉很假。我的问题是:
是否有一种回调机制可以附加到 show.bind 上,在使元素可见之后调用?
我的模板:
设置模型并调用 Tether 的函数:
是否有一种回调机制可以附加到 show.bind 上,在使元素可见之后调用?
我的模板:
<div ref="tooltip" show.bind="selectedAlert" class="homepage-stats-tooltip panel panel-default">
<div class="panel-body">
<h1>${selectedAlert.Name}</h1>
<dl>
<dt>Normal</dt>
<dd>${selectedAlert.NormalVolume}</dd>
<dt>Current</dt>
<dd>${selectedAlert.CurrentVolume}</dd>
</dl>
</div>
</div>
设置模型并调用 Tether 的函数:
showTip(event, state) {
if (!state) {
return;
}
console.log(`Show tip for ${state.Name}.`);
this.selectedAlert = state;
setTimeout(() => {
new Tether({
element: this.tooltip,
target: event.target,
attachment: "top left",
targetAttachment: "top right",
constraints: [
{
to: this.usMap,
pin: true,
attachment: 'together'
}
]
});
}, 10);
}
谢谢!