当前位置: 首页 > news >正文

仿素材网站济南公司网站开发

仿素材网站,济南公司网站开发,购物网站首页模板下载,网站流量怎么做的昨天跑的好好项目,今天跑不起来我们在开发周期比较长的前端项目的时候,必然会遇到依赖管理的问题. 我们在开发项目的时候,我们用了大量的三方库.这些三方的依赖库时不时的会更新自己的代码.第三方依赖库的代码更新会很容易造成代码运行的不稳定, 比如昨天还跑的好好的项目,另一…昨天跑的好好项目,今天跑不起来我们在开发周期比较长的前端项目的时候,必然会遇到依赖管理的问题. 我们在开发项目的时候,我们用了大量的三方库.这些三方的依赖库时不时的会更新自己的代码.第三方依赖库的代码更新会很容易造成代码运行的不稳定, 比如昨天还跑的好好的项目,另一位刚刚接手的同学重新安装依赖之后项目就完全跑不起来了. 或者自己机器跑的好好的代码,扔到打包机上重新打包之后就完全跑不起来.因为三方依赖库用的太多,很多时候并不能很快速的定位到项目为什么跑不起来. 特别是开发RN项目的时候,一个依赖更新的问题可能会定位一个大半天才能找到罪魁祸首(曾经的我为了这种事情浪费了大量的青春).锁定NPM依赖版本对于那些你不熟悉,或者不能保证稳定的三方npm包,我这边的做法是直接锁定版本号. 这件事情做的越早越好,不要盲目相信三方npm越更新性能越好. 他会时不时的让你痛一下.让你浪费大量的时间去寻找到底是谁影响了你的代码正常运行.第三方npm包有bug如何解决?升级原有npm包版本如果你发现了你的第三方npm有bug,建议不要盲目的升级版本.第一步你需要先看这个npm包的 changelog,如果有明确修复过这个bug, 才会建议你升级.但是不能保证升级之后可能会带来其他bug.修掉bug发布在公司私有源但是我还是比较建议,在原来版本的npm包上修掉这个bug,并且修改npm包名为公司内部包,发布到公司私有npm源上. 如果因为npm版本的改动,导致项目不稳定,也可以缩小排查范围,快速定位到是哪一个npm库导致的问题.例如: mobx 公司源/mobx小技巧: .npmrc配置如果你有发布到公司私有源的三方npm包, 你可以尝试修改.npmrc文件使用npm名的作用域直接指向公司私有源例如:公司源:registryhttp://npm.xxx.com tarojs:registryhttp://npm.xxx.com所有项目依赖统一管理上面说到了我们将所有的有不稳定的npm包锁定版本,保证项目长期维护可以正常运行. 现在我们团队开发的跨端项目将近上百个. 为了保证上百个的项目可以长期稳定运行. 我将所有的依赖封装成了一个npm库,里面没有任何的js代码,只有稳定的依赖. 所有的项目都会引入这个核心的依赖,以保证所有项目可以稳定运行.保证项目使用npm的差异化,强行指定版本所有依赖全部统一之后,肯定会有项目因为一些原因不想使用个别的三方npm包. 这里就必须要提到package.json依赖管理的 resolutions属性. 这样npm就会将多版本共存的版本,强行指定某一版本,满足个别项目的特定需求.使用方法如下:// package.json {resolutions: {hoek: 4.2.1} }当然你也可以使用这个工具,将依赖强制指定版本: https://www.npmjs.com/package/npm-force-resolutions加速你的npm安装速度除了大家都知道的npm换源之外,npm依赖的执行文件下载也会拖慢你的依赖安装速度.以下是我们团队使用的.npmrc配置,对于一些npm依赖的执行文件, 可以使用该配置加速你的npm构建速度..npmrc文件的位置在你的home目录下,你也可以在项目根目录创建该文件.chromedriver-cdnurlhttps://npm.taobao.org/mirrors/chromedriver couchbase-binary-host-mirrorhttps://npm.taobao.org/mirrors/couchbase/v{version} debug-binary-host-mirrorhttps://npm.taobao.org/mirrors/node-inspector electron-mirrorhttps://npm.taobao.org/mirrors/electron/ flow-bin-binary-host-mirrorhttps://npm.taobao.org/mirrors/flow/v fse-binary-host-mirrorhttps://npm.taobao.org/mirrors/fsevents fuse-bindings-binary-host-mirrorhttps://npm.taobao.org/mirrors/fuse-bindings/v{version} git4win-mirrorhttps://npm.taobao.org/mirrors/git-for-windows gl-binary-host-mirrorhttps://npm.taobao.org/mirrors/gl/v{version} grpc-node-binary-host-mirrorhttps://npm.taobao.org/mirrors hackrf-binary-host-mirrorhttps://npm.taobao.org/mirrors/hackrf/v{version} leveldown-binary-host-mirrorhttps://npm.taobao.org/mirrors/leveldown/v{version} leveldown-hyper-binary-host-mirrorhttps://npm.taobao.org/mirrors/leveldown-hyper/v{version} mknod-binary-host-mirrorhttps://npm.taobao.org/mirrors/mknod/v{version} node-sqlite3-binary-host-mirrorhttps://npm.taobao.org/mirrors node-tk5-binary-host-mirrorhttps://npm.taobao.org/mirrors/node-tk5/v{version} nodegit-binary-host-mirrorhttps://npm.taobao.org/mirrors/nodegit/v{version}/ operadriver-cdnurlhttps://npm.taobao.org/mirrors/operadriver phantomjs-cdnurlhttps://npm.taobao.org/mirrors/phantomjs profiler-binary-host-mirrorhttps://npm.taobao.org/mirrors/node-inspector/ puppeteer-download-hosthttps://npm.taobao.org/mirrors python-mirrorhttps://npm.taobao.org/mirrors/python rabin-binary-host-mirrorhttps://npm.taobao.org/mirrors/rabin/v{version} sass-binary-sitehttps://npm.taobao.org/mirrors/node-sass sodium-prebuilt-binary-host-mirrorhttps://npm.taobao.org/mirrors/sodium-prebuilt/v{version} sqlite3-binary-sitehttps://npm.taobao.org/mirrors/sqlite3 utf-8-validate-binary-host-mirrorhttps://npm.taobao.org/mirrors/utf-8-validate/v{version} utp-native-binary-host-mirrorhttps://npm.taobao.org/mirrors/utp-native/v{version} zmq-prebuilt-binary-host-mirrorhttps://npm.taobao.org/mirrors/zmq-prebuilt/v{version} sentrycli_cdnurlhttps://npm.taobao.org/mirrors/sentry-cli附录 : NPM中的版本号规则版本的格式: major.minor.patch主版本号.次版本号.修补版本号version必须大于某个版本如1.1.2表示必须大于1.1.2版version可大于或等于某个版本如1.1.2表示可以等于1.1.2也可以大于1.1.2版本version必须小于某个版本如1.1.2表示必须小于1.1.2版本version可以小于或等于某个版本如1.1.2表示可以等于1.1.2也可以小于1.1.2版本~version大概匹配某个版本如果minor版本号指定了那么minor版本号不变而patch版本号任意如果minor和patch版本号未指定那么minor和patch版本号任意如~1.1.2表示1.1.2 1.2.0可以是1.1.21.1.31.1.4.....1.1.n如~1.1表示1.1.0 1.2.0可以是同上如~1表示1.0.0 2.0.0可以是1.0.01.0.11.0.2.....1.0.n1.1.n1.2.n.....1.n.n^version兼容某个版本版本号中最左边的非0数字的右侧可以任意如果缺少某个版本号则这个版本号的位置可以任意如^1.1.2 表示 1.1.2 2.0.0可以是 1.1.21.1.3.....1.1.n1.2.n.....1.n.n如^0.2.3 表示0.2.3 0.3.0可以是0.2.30.2.4.....0.2.n如^0.0表示 0.0.0 0.1.0可以是0.0.00.0.1.....0.0.nx标识符x的位置表示任意版本如1.2.x表示可以1.2.01.2.1.....1.2.n*标识符任意版本也表示任意版本如*表示0.0.0的任意版本version1 - version2大于等于version1小于等于version2如1.1.2 - 1.3.1表示包括1.1.2和1.3.1以及他们建的任意版本range1 || range2满足range1或者满足range2可以多个范围如1.0.0 || 2.3.1 2.4.5 || 2.5.2 3.0.0表示满足这3个范围的版本都可以*** 公众号“ **Alili丶前端大爆炸**”关注后提供海量学习资料
http://www.yutouwan.com/news/104895/

相关文章:

  • 金华做网站建设公司wordpress 标签描述
  • 建站之星切换模板零陵区住房和城乡建设局网站首页
  • 好看的商城网站设计什么是网络营销环境?
  • gps建站教程案例网站模板_案例网
  • 公司网页网站建设 ppt模板下载网站备案查询 站长
  • 景安企业网站建设宝塔反代wordpress
  • 天河区住房和建设水务局官方网站做旅游产品的网站有哪些
  • 设计网站费用企业网站建设流程图
  • 嘉兴房地产网站建设大连百度推广排名优化
  • 学校建设评建工作网站嘉定南翔网站建设
  • 制作微信公众号网站开发asp网站 工具
  • 云南省建设监理协会网站汕头行业网站
  • 陕西网站建设通报免费微信小程序模板
  • 互联网保险的发展现状宁波seo怎么做推广渠道
  • 门户网站建设自查整改运营是做什么的
  • 网站开发公司前置审批免费注册网站空间
  • 微商网站开发班服定制的网站
  • 网站建立失败的原因是海关申报网站怎么做
  • 大庆医院网站建设方案四川旅游
  • 科技公司手机网站ui设计师资格证
  • 山西焦煤集团公司网站 wap网站开发
  • 做质量计量的网站有哪些浙江建设网证书查询
  • 深圳网站建设公司联系方式上海橙网站设计公司
  • 网站被别的域名绑定深圳做营销网站公司
  • 网站关键词分隔符广州网站建设小程序开发
  • 用手机怎么做免费网站海口网页设计
  • 企业网站建站的专业性原则是指wordpress 文章的php
  • 场口一站式建站哪家公司好Wordpress搜索html页面
  • 做海外视频的网站有哪些品牌营销策划推广
  • 聊城专业建wap网站重庆高端seo