You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何自定义PnP Modern Search人员悬停名片,隐藏指定信息

解决mgt-person悬停名片显示多余信息的问题

你目前使用person-card-include属性未达到预期效果,是因为该属性仅控制字段是否被加载,但组件默认模板仍会渲染部分默认内容。以下两种方法可以实现隐藏指定信息的需求:

方法一:通过CSS直接隐藏不需要的元素

找到对应元素的类名,添加自定义CSS规则隐藏:

/* 隐藏整个联系方式区域(包含邮箱、电话等) */
.mgt-person-card__contact {
  display: none !important;
}

/* 如果需要隐藏单个字段,比如邮箱 */
.mgt-person-card__email {
  display: none !important;
}

方法二:自定义person-card模板(完全控制显示内容)

通过嵌套template标签,完全自定义悬停名片的结构,只保留你需要的信息:

<div class="example">
  <div style="margin-bottom:10px">Person Card Hover</div>

  <mgt-person
    person-query="me"
    view="twolines"
    person-card="hover">
    <!-- 自定义person-card模板 -->
    <template data-type="person-card">
      <mgt-person-card>
        <template data-type="default">
          <div class="mgt-person-card">
            <div class="mgt-person-card__header">
              <img class="mgt-person-card__avatar" src="{{person.avatar}}" alt="{{person.displayName}}" />
              <div class="mgt-person-card__details">
                <div class="mgt-person-card__name">{{person.displayName}}</div>
                <div class="mgt-person-card__title">{{person.jobTitle}}</div>
                <div class="mgt-person-card__department">{{person.department}}</div>
              </div>
            </div>
            <!-- 此处可添加需要的其他内容,不需要的部分直接删除 -->
          </div>
        </template>
      </mgt-person-card>
    </template>
  </mgt-person>
</div>

补充说明

person-card-include属性的作用是指定组件需要请求的用户字段,而非直接控制模板显示。如果默认模板包含了你不需要的内容,必须通过CSS隐藏或自定义模板来实现需求。

内容的提问来源于stack exchange,提问作者Karan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.01 13:02:32