SP2016 FP2部署SPFx WebPart后其他站点无法显示的问题求助
解决SP2016 FP2部署SPFX WebPart后应用不显示+分布式缓存报错问题
这个问题我帮客户排查过好多次,核心是SP2016 FP2对SPFX的支持有特定限制,你的ULS日志报错DistributedClientSideAppUpdateTimeCache键找不到,大概率是下面几个操作疏漏导致的:
SPFX版本不兼容
SP2016 FP2仅支持SPFX v1.1.0到v1.11.0的版本,高版本(v1.12及以上)完全不兼容旧版SharePoint。如果你的项目用了更高版本,必须降级SPFX依赖,比如通过npm install @microsoft/sp-core-library@1.11.0这类命令调整,或者直接用对应版本的Yeoman脚手架重建项目。分布式缓存服务配置异常
这个报错直接关联分布式缓存的缓存键注册问题:- 先确认分布式缓存服务正常运行:在SharePoint管理中心的「服务应用」→「管理服务」里,找到「Distributed Cache」服务,确保状态是Online;也可以用PowerShell验证:
Get-SPServiceInstance | Where-Object {$_.TypeName -eq "Distributed Cache"} - 如果服务正常,手动注册缺失的缓存键并重启服务:
# 重新添加分布式缓存实例 Add-SPDistributedCacheServiceInstance # 获取缓存管理器并加载目标缓存键 $cacheManager = New-Object Microsoft.SharePoint.DistributedCaching.SPDistributedCacheManager $cacheManager.GetCache("DistributedClientSideAppUpdateTimeCache") # 重启缓存服务 Restart-Service AppFabricCachingService
- 先确认分布式缓存服务正常运行:在SharePoint管理中心的「服务应用」→「管理服务」里,找到「Distributed Cache」服务,确保状态是Online;也可以用PowerShell验证:
应用部署范围错误
SP2016中,SPFX应用包必须部署到租户级应用目录,才能在所有站点集可见。如果你只上传到单个站点的应用库,其他站点肯定看不到。去管理中心的「应用管理」→「管理应用目录」,把包上传到租户应用目录后,再部署到目标站点集。站点集功能未激活
每个要使用该WebPart的站点集,都需要激活「SharePoint Framework」站点集功能。进入站点集设置→「站点集功能」,找到该功能并确保它处于激活状态。
如果以上步骤都试过还是不行,可以尝试清理分布式缓存的对应容器内容,再重新部署:
Clear-SPDistributedCacheItem -ContainerType DistributedClientSideAppUpdateTimeCache
内容的提问来源于stack exchange,提问作者Sebastian Gritsch
相关产品推荐
相关产品推荐

