博客地址:http://blog.csdn.net/FoxDave

升级SharePoint Framework项目

部署SharePoint自定制解决方案到生产环境并不意味着生命周期的结束,因为还有有新的需求或变更。在升级项目时需要考虑以下一些事情。

语义化版本(SemVer)

SPFx项目使用SemVer来跟踪版本号,其实就是我们通常所说的版本,如1.0.1,它由三部分组成:主要版本.次要版本.补丁。对于SPFx项目来说,由如下约定:

主要版本:修改不是向下兼容的

次要版本:新增向下兼容的新功能

补丁:向下兼容的bug修复

关于SemVer的更多信息可以戳这里

增长版本号

在升级SPFx解决方案时,开发者应该提升所修改部分的版本号来表明是哪个部分进行了修改。

>增长package.json文件中的包版本

SPFx包的结构跟Node.js包类似,它的依赖关系和元数据存储在项目文件夹的package.json文件中,其中就有一个version属性来表示整个项目的版本号。默认情况下,解决方案中的所有组件都继承这个版本。开发者在每次发布新版本时应该修改这个属性。

>增长package-solution.json文件中的包版本

SPFx解决方案使用.sppkg文件进行部署,该文件安装在SharePoint中的应用程序目录网站上。.sppkg文件跟SharePoint add-in包类似,将四段版本号(主版本.次版本.修订版本.编译版本)存储在config/package-solution.json文件中。为了清晰可见,开发者应该保持该版本和package.json文件的版本同步。

更新依赖引用

试想如果Angular发布了一个新版本,修复了bug并提升了性能,这时我们就需要更新我们的项目了。更新时使用命令nmp install <package>@<version> --save。注意不要手动修改package.json文件中依赖引用的版本号,这会带来不必要的麻烦和不好排插的错误。

>注意项目结构的变更

有时项目的升级可能会带来结构的变更和配置文件的变更。通常在更新项目之前,如果碰到这种情况就一定要好好比对,避免项目出现损坏。

>谨防使用npm outdated命令

找出项目中哪些依赖引用需要升级的方法之一是执行npm outdated命令。该命令会扫描你的依赖引用树并提示哪个包可以升级,很方便的命令,但是我们需要小心使用。

从举个例子。版本1.3开始,SharePoint Framework Yeoman生成器允许开发者在创建时选择项目是只在Online上运行还是Onpremise上也要运行。但是SharePoint本地的SPFx要比Online的旧,这时如果在一个需要兼容本地的项目上使用npm outdated命令,它会提示你升级到最新版本。然而,这样你的项目就无法在本地运行了。

以发布模式编译和打包项目

一旦项目通过测试,可以使用gulp bundle --ship命令以release模式编译项目。然后使用gulp package-solution --ship命令打包。注意在打包之前一定要先执行编译命令,否则包里会包含旧版本的内容。

部署解决方案的新版本

编译打包项目之后的下一步就是部署了。首先部署项目中./temp/deploy文件夹里的web部件bundle,再发布解决方案之前版本的其他文件。注意暂时不要将旧版解决方案的内容移除,因为可能会有正在使用的。每个版本的bundle文件都有唯一的名称,移除先前版本后再升级web部件会损坏当前正在使用的那些。

最后部署新的解决方案包到SharePoint应用程序目录。

SharePoint Framework 基于团队的开发(五)的更多相关文章

  1. SharePoint Framework 基于团队的开发(二)

    博客地址:http://blog.csdn.net/FoxDave 本篇介绍SPFx项目的一般开发流程.SharePoint Framework基于开源的工具链,也遵循开源技术栈中其他项目的开发流程. ...

  2. SharePoint Framework 基于团队的开发(四)

    博客地址:http://blog.csdn.net/FoxDave 确保代码一致性和质量 软件开发团队常常同项目的一致性和高质量做斗争.不同的开发者有不同的编码风格和偏好.在每个团队都有技术优秀的独立 ...

  3. SharePoint Framework 基于团队的开发(一)

    博客地址:http://blog.csdn.net/FoxDave SharePoint Framework是新的用来构建SharePoint自定制的开发模型,它专注于客户端开发并用热门的开源工具gu ...

  4. SharePoint Framework 基于团队的开发(三)

    博客地址:http://blog.csdn.net/FoxDave 用内部包进行开发 由于你的团队在开发客户端解决方案,你很可能构建通用代码库来在项目中重用.在很多情况下这种库包含的代码是内部所有的不 ...

  5. SharePoint Framework 开发工具和库

    博客地址:http://blog.csdn.net/FoxDave SharePoint Framework包含一些客户端JavaScript库,你可以用来构建自己的解决方案.本文提供了你可以用来 ...

  6. 深入浅出Docker(五):基于Fig搭建开发环境

    概述 在搭建开发环境时,我们都希望搭建过程能够简单,并且一劳永逸,其他的同事可以复用已经搭建好的开发环境以节省开发时间.而在搭建开发环境时,我们经常会被复杂的配置以及重复的下载安装所困扰.在Docke ...

  7. Wizard Framework:一个自己开发的基于Windows Forms的向导开发框架

    最近因项目需要,我自己设计开发了一个基于Windows Forms的向导开发框架,目前我已经将其开源,并发布了一个NuGet安装包.比较囧的一件事是,当我发布了NuGet安装包以后,发现原来已经有一个 ...

  8. BEGINNING SHAREPOINT&#174; 2013 DEVELOPMENT 第3章节--SharePoint 2013 开发者工具 SharePoint中基于Web开发

    BEGINNING SHAREPOINT® 2013 DEVELOPMENT 第3章节--SharePoint 2013 开发者工具 SharePoint中基于Web开发         之前提到过, ...

  9. SharePoint Framework (SPFx)安装配置以及开发-基础篇

    前言 SharePoint Framework(SPFx),是页面 和Webpart的模型,完全支持本地开发(即完全可以脱离SharPoint环境在本地进行开发),SPFx包含了一系列的client- ...

随机推荐

  1. webpack 4.X 与 Vue 2.X结合

    # Vue.js ## 注意: 有时候使用`npm i node-sass -D`装不上,这时候,就必须使用 `cnpm i node-sass -D` ## 在普通页面中使用render函数渲染组件 ...

  2. 小程序使用阿里巴巴TTF字体文件以及图标

    转话地址https://transfonter.org 第一步:下载需要的字体图标 进入阿里图标官网http://iconfont.cn/搜索自己想要的图标,如这里需要一个购物车的图标,流程为: 搜索 ...

  3. 如何只安装Postgresql client(以9.4 为例)

    Install the repository RPM: yum install https://download.postgresql.org/pub/repos/yum/9.4/redhat/rhe ...

  4. CentOS7服务管理

    1.在/usr/lib/systemd/system目录下建立服务启动文件,文件格式:[root@Centos7 ]# cat /usr/lib/systemd/system/nginx.servic ...

  5. Python汉诺塔问题

    汉诺塔描述 古代有一座汉诺塔,塔内有3个座A.B.C,A座上有n个盘子,盘子大小不等,大的在下,小的在上,如图所示.有一个和尚想把这n个盘子从A座移到C座,但每次只能移动一个盘子,并且自移动过程中,3 ...

  6. springboot返回页面

    1.使用@Controller注解: @Controller必须配合模板 先导入依赖: <dependency> <groupId>org.springframework.bo ...

  7. OO的奇妙冒险1

    OO的奇妙冒险 ~OOP入门与字符串处理~ 目录 总体分析 作业内容分析 作业内容总结 互测的收获 公测互测bug分析与总结 不太正经的个人自嗨 总体分析 公测 中测(基础与进阶): 其实在我看来,从 ...

  8. vue-文字块收缩与展开功能

    在设计图中要求的效果为: 文字限制超过9行即隐藏,并显示“展开”按钮,点击按钮进行切换,控制文本全部展示和部分展示 在原本的实现过程中,使用了红框内的判断方式: 页面代码: 样式则规定嵌套元素给一个死 ...

  9. 【算法】祭奠spfa 最短路算法dijspfa

    题目链接 本题解来源 其他链接 卡spfa的数据组 题解堆优化的dijkstra 题解spfa讲解 来自以上题解的图片来自常暗踏阴 使用前向星链表存图 直接用队列优化spfa struct cmp { ...

  10. vue-cli(vue脚手架) 简单使用

    1.vue-cli 作用 vue-cli作为vue的脚手架,可以帮助我们在实际开发中自动生成vue.js的模板工程. 2.vue-cli 使用 a. 安装全局vue-cli npm install v ...