SharePoint Framework版本升级频率还是比较高的,这样就导致了我们本地的sharepoint webpart generator版本(@microsoft/sharepoint-generator)很可能比较低,无法使用SharePoint Framework中比较高级的功能,例如Teams相关的,这篇文章主要讲解如果安全的升级spfx的版本。
首先通过执行如下命令查看当前spfx的版本
从上面的截图可以看出spfx的版本是 1.7.0, 对应的最新版本是 1.10.0,下面是升级的步骤
依次执行以下命令:
npm install @microsoft/sp-build-web@1.10.0 --save
npm install @microsoft/sp-core-library@1.10.0 --save
npm install @microsoft/sp-lodash-subset@1.10.0 --save
npm install @microsoft/sp-module-interfaces@1.10.0 --save
npm install @microsoft/sp-office-ui-fabric-core@1.10.0 --save
npm install @microsoft/sp-tslint-rules@1.10.0 --save
npm install @microsoft/sp-webpart-base@1.10.0 --save
npm install @microsoft/sp-webpart-workbench@1.10.0 --save
执行完成之后检查下package.json,看下spfx对应的包版本是否是最新的,或者再执行下命令 npm outdated 验证下
升级完成之后,执行下 gulp build命令,可能会出以下错误(不同版本升级,情况不一样)
原因是 1.10.0版本,多引入了@microsoft/rush-stack-compiler-3.2 包,需要额外install以下,执行如下命令
npm install @microsoft/rush-stack-compiler-3.2 --save
这样就完成了这个webpart对应的spfx版本的升级,接下来如果还想更新global的generator的版本,方便以后新建webpart的时候直接是最新的版本,可以再执行如下命令:
npm outdated -g
可以看到@microsoft/generator-sharepoint包版本为1.7.0 最新版本为1.10.0
接下来可以执行
npm install @microsoft/generator-sharepoint@1.10.0 -g
来完成升级。
参考链接: https://docs.microsoft.com/en-us/sharepoint/dev/spfx/toolchain/update-latest-packages