最近写小程序,new Date(‘2018-12-17 13:12’)在电脑上显示正常,用开发者工具进行真机调试的时候也正常,放到手机上就报错,开始还以为是时分秒都必须有. 过了一会才想起来ios的时间格式必须为 2018/12/17 ios不支持2018-12-17的写法,所以-必须都替换为/
1 2 3 |
var date = '2018-12-17 13:33' Date.parse(new Date(date.replace(/-/g, '/'))); |
这个问题隔一段时间都会遇到一次,每次自己都忘了这个点…. ———————————————— 版权声明:本文为CSDN博主「__朝朝」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/qq_37514029/article/details/85052064
View Details一、问题出现 新项目采用新的前端ajax请求方式,对应的后端接口也进行了参数层面的修改。 原先在谷歌F12查看的接口请求参数打印为Query String Parameters 后续对参数进行了封装,接口请求参数打印为 。 本地测试都通过的情况下,决定上线。上线完之后对于post请求出现了请求服务器失败的情况,开始对nginx的配置进行整理和排查。 二、问题排查 原先的nginx配置如下图所示 通过对nginx日志的分析,发现了一个OPTIONS类型的请求。经过查证在请求时,OPTIONS请求是客户端的浏览器对服务端发送的一个请求,属于浏览器级行为 OPTIONS请求方法的主要用途有两个: 1、获取服务器支持的HTTP请求方法; 2、用来检查服务器的性能。例如:AJAX进行跨域请求时的预检,需要向另外一个域名的资源发送一个HTTP OPTIONS请求头,用以判断实际发送的请求是否安全。 再来看下这个“某些情况下”都是什么情况? 1、跨域请求,非跨域请求不会出现options请求 2、自定义请求头 3、请求头中的content-type是application/x-www-form-urlencoded,multipart/form-data,text/plain之外的格式 当满足条件12或者13的时候,简单的ajax请求就会出现options请求,有没有感觉到一点同源策略的意思,个人理解这个就是浏览器底层对于同源策略的一个具体实现。首先得到服务器端的确认,才能继续下一步的操作,这也是为什么options请求也被叫做“预检”请求的原因吧。 通过上面的描述,大致理解了什么是opyions请求以及options请求发送的时机,以此说明需要先处理options请求再对自己的请求做处理 三、处理方式 直接上代码了
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
location / { proxy_set_header Host $host; add_header 'Access-Control-Allow-Credentials' 'true'; add_header Access-Control-Allow-Origin "$http_origin"; add_header Access-Control-Allow-Headers 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization'; if ($request_method = 'OPTIONS') { return 204; } add_header Cache-Control no-cache; add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS'; proxy_pass 代理地址 } |
from:https://blog.csdn.net/ATadpole/article/details/109185390
View Details问题描述: 自己在自学vue做项目的过程中,遇到一个有关背景图片路径的问题,就是css代码中背景图片是根据相对路径来写的,如下图: 当使用npm run dev命令本地访问的时候,背景图片是正常显示的,可使用npm run build命令打包后,访问dist目录下的项目,页面背景图路径就不对了,显示不出背景图。如下两张图对比 图一:使用npm run dev命令访问 图二:使用npm run build命令打包之后,访问dist目录下的文件,出现的问题,背景图片路径变成了http://127.0.0.1:9000/static/css/static/img/login-bg.0271ef1.jpeg,而实际在dist目录下,图片路径是这样的,如下图 解决办法: 解决办法为:只需要在build/utils.js文件中添加如下一行代码即可。
1 |
publicPath:'../../' |
添加位置为如下图: 然后重新执行 npm run build 命令,即可成功显示图片 from:https://www.cnblogs.com/libo0125ok/p/9361038.html
View Details场景: 1.内嵌使用的是 vue + webpack 打包的单页面 2.更新内容后,webview里面的内容无法更新, 解决办法 1.在url后面加时间戳, 这个在苹果可以实时解决缓存,安卓有些机子不行 2.在安卓机子不行的时候,需要在webpack打包的时候加上 hash配置,不懂hash配置的,可以百度一下, 并且在index.html 里面meta标签加上http-equiv=“cache-control” content=“no-cache” 3.以上能解决新的打包项目在webview 缓存问题, 4.因为原先已经有缓存,进不到新打包的项目里面,走不到新的代码,所有还是会存在缓存问题,只需微信打开http://debugtbs.qq.com,然后根据里面提示,进入页面,里面有一个清除本地缓存选项,清除后,下次进去就可以了。 5.完美解决webview缓存问题 ———————————————— 版权声明:本文为CSDN博主「qq_39260927」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/qq_39260927/article/details/110558497
View Details前言 小程序webview的页面缓存会影响开发中的调试和生产中的使用 解决 1.页面缓存由浏览器缓存引起,那么可以通过设置来修改浏览器缓存。 可以通过nginx设置cache-control 来关闭浏览器缓存 2.由于是单页面应用,所以只需要对index.html设置即可。 对index.html中的资源地址,也会存在缓存,可以通过webpack构建时加入hash值解决。 作者:依然还是或者其他 链接:https://www.jianshu.com/p/e0363ff16b34 来源:简书 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
View Detailslocation / { #如果expires 和 add_header 同时开启的情况下,则add_header优于expires生效 #Cache-Control比Expires可以控制的多一些, 而且Cache-Control会重写Expires的规则 #设置禁止浏览器缓存,每次都从服务器请求 add_header Cache-Control no-cache; add_header Cache-Control private; #设置缓存上面定义的后缀文件缓存到浏览器的生存时间 expires -1s; proxy_pass http://…; } ———————————————— 版权声明:本文为CSDN博主「风暴幽居」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/shuiyuetianwy/article/details/98938530 光子补充:
1 2 3 |
if ($request_filename ~* ^.*?.(html|htm)$) { add_header Cache-Control "no-cache, no-store, must-revalidate"; } |
View Details
俗话说得好,工欲善其事必先利其器。本文阿宝哥将介绍一些优秀的开源项目,利用这些开源项目,你将能能轻松应对以下十个工作场景:文件上传、图片处理、文档处理、网络请求、数据存储、微前端、表单设计器、H5 页面设计器、文档管理和 API 管理。 阅读阿宝哥近期热门文章(感谢掘友的鼓励与支持🌹🌹🌹): 77.9K Star 的 Axios 项目有哪些值得借鉴的地方(1018+ 个👍) 使用这些思路与技巧,我读懂了多个优秀的开源项目(724+ 个👍) 这些高阶的函数技术,你掌握了么 (629+ 个👍) 文件上传 uppy The next open source file uploader for web browsers 🐶 github.com/transloadit… uppy 是一个体验顺滑、模块化的 JavaScript 文件上传器,可以无缝地与任何应用程序集成。它速度快,使用方便,可以让你专注比构建文件上传器更重要的问题。该库拥有以下特性: 支持 I18n 及可访问性; 轻量,基于模块化的插件架构,可按需加载; 通过开放的 tus 标准,可恢复文件上传,可以解决上传过程中网络故障的问题。 filepond 🌊 A flexible and fun JavaScript file upload library github.com/pqina/filep… filepond 是一个 JavaScript 库,可以上传你扔给它的任何内容,优化图像以加快上传速度,并提供出色的,可访问的,柔滑的用户体验。该库拥有以下特性: 接受目录,文件,Blobs,本地 URL,远程 URL 和 Data URIs; 图像优化,自动调整图像大小,支持裁剪,过滤和修复 EXIF 方向; 支持拖拽文件,从文件系统选择文件,复制和粘贴文件或使用 API 添加文件; 使用 AJAX 进行异步上传,支持分块上传,可以将文件编码为 base64 数据,并可以通过表单提交。 ✨ 扩展阅读 ✨ 玩转前端文件上传 大规格文件的上传优化 关注「全栈修仙之路」阅读阿宝哥原创的 3 本免费电子书(累计下载近2万)及 50 几篇 “重学TS” 教程。 图片处理 tui.image-editor 🍞🎨 Full-featured […]
View Details阿宝哥第一次使用 TypeScript 是在 Angular 2.x 项目中,那时候 TypeScript 还没有进入大众的视野。然而现在学习 TypeScript 的小伙伴越来越多了,本文阿宝哥将从 16 个方面入手,带你一步步学习 TypeScript,感兴趣的小伙伴不要错过。 一、TypeScript 是什么 TypeScript 是一种由微软开发的自由和开源的编程语言。它是 JavaScript 的一个超集,而且本质上向这个语言添加了可选的静态类型和基于类的面向对象编程。 TypeScript 提供最新的和不断发展的 JavaScript 特性,包括那些来自 2015 年的 ECMAScript 和未来的提案中的特性,比如异步功能和 Decorators,以帮助建立健壮的组件。下图显示了 TypeScript 与 ES5、ES2015 和 ES2016 之间的关系: 1.1 TypeScript 与 JavaScript 的区别 TypeScript JavaScript JavaScript 的超集用于解决大型项目的代码复杂性 一种脚本语言,用于创建动态网页 可以在编译期间发现并纠正错误 作为一种解释型语言,只能在运行时发现错误 强类型,支持静态和动态类型 弱类型,没有静态类型选项 最终被编译成 JavaScript 代码,使浏览器可以理解 可以直接在浏览器中使用 支持模块、泛型和接口 不支持模块,泛型或接口 社区的支持仍在增长,而且还不是很大 大量的社区支持以及大量文档和解决问题的支持 1.2 获取 TypeScript 命令行的 TypeScript 编译器可以使用 npm 包管理器来安装。 1.安装 TypeScript
1 |
$ npm install -g typescript |
2.验证 TypeScript
1 2 |
$ tsc -v # Version 4.0.2 |
3.编译 TypeScript 文件
1 2 |
$ tsc helloworld.ts # helloworld.ts => helloworld.js |
当然,对刚入门 TypeScript 的小伙伴来说,也可以不用安装 typescript,而是直接使用线上的 TypeScript Playground 来学习新的语法或新特性。通过配置 TS Config 的 Target,可以设置不同的编译目标,从而编译生成不同的目标代码。 […]
View Details商业创新——商业画布九宫格 * 客户细分 谁是你的用户?你的用户有什么特点? * 价值主张 你可以为你的用户提供什么样的产品和服务? * 渠道通路 你通过什么渠道与你的客户接触? * 客户关系 你与你的客户将建立一种什么样的关系? * 收入来源 这套商业模式可以有哪些收入来源? * 核心资源 你已经具有或者需要掌握怎样的核心资源? * 关键活动 你需要开展哪些核心活动? * 重要伙伴 你需要有哪些重要的合作伙伴? * 成本结构 这套商业模式在哪些地方花钱?成本结构是怎样的? 商业创新——精益画布 * 问题 最需要解决的三个问题 * 解决方案 产品最重要的三个功能 * 关键指标 应该考核哪些东西 * 独特卖点 用一句话简明扼要但引人注目的话阐述为什么你的产品与众不同,值得购买 * 门槛优势 无法被对手轻易复制或者买去的竞争优势 * 渠道 如何找到客户 * 客户群体分类 目标客户 * 成本分析 争取客户所需花费 销售产品所需花费 网站架设费用 人力资源费用等 * 收入分析 盈利模式 客户终身价值 收入 毛利 产品设计 * 管理账户 * 浏览 * 购买 * 支付 * 配送 * 退货 敏捷开发 * Scrum 迭代式增量软件开发过程,通常用于敏捷软件开发。 持续交付 * 计划——编码——构建——测试——发布——部署——运营——监控—>下个循环 * 持续部署 蓝绿部署 灰度发布(金丝雀发布) 持续运营 * […]
View Details