首页 > 解决方案 > 调用刷新时,MGT GET 组件使用加载模板重新呈现,但轮询不会发生这种情况

问题描述

我有一个 MGT GET 组件,如下所示

<Get dataChange={datachange} cacheEnabled ={true} cacheInvalidationPeriod={30000} version="beta" resource={"teams/{teamID}/channels/{ChannelID}/messages/{MessageID}/replies?$top=100"}>
<LastMessageItem id="math" template="value" />
<LoadingTemplate template="loading" />
</Get>

export const LastMessageItem = (props: any) => {
return  <div>
  {props.dataContext.body.content}
</div>
}
export function LoadingTemplate(props: MgtTemplateProps) {
  return (<div><Shimmer shimmerElements={shimmerWithElementThirdRow} />
      <Shimmer shimmerElements={shimmerWithElementThirdRow} />
      <Shimmer shimmerElements={shimmerWithElementThirdRow} />
      <Shimmer shimmerElements={shimmerWithElementThirdRow} />
      <Shimmer shimmerElements={shimmerWithElementThirdRow} />
      <Shimmer shimmerElements={shimmerWithElementThirdRow} />
      <Shimmer shimmerElements={shimmerWithElementThirdRow} />
      
      </div>);
}

如果我为 MGT 获取组件调用 hard-refresh = false 的刷新方法,则整个组件重新加载并且闪烁再次可见

(document.querySelector('mgt-get') as MgtGet).refresh(false);

但是在启用轮询的情况下,仅在 UI 中更新更改而不加载整个组件并且没有可见的闪光,这是一种干净的方式。

我希望在刷新的情况下不会发生闪烁或加载整个组件,并且它的行为应该与轮询相同,即仅在 UI 中应用更改。

标签: graphmicrosoft-graph-apimicrosoft-graph-toolkit

解决方案


推荐阅读