golang函数究竟是值传递还是引用传递?

接上文,踩完php的坑,又遇到golang,golang和之前提到过的Java、JavaScript类似。

在golang中只存在值传递(要么是该值的副本,要么是指针的副本),不存在引用传递。之所以对于引用类型的传递可以修改原内容数据,是因为在底层默认使用该引用类型的指针进行传递,但是也是使用指针的副本,依旧是值传递。

查看更多...

php函数之值传递&引用传递

由于工作忙碌,博客已经断更整一年,最近终于抽出点时间,来分享一些近一年经历中印象深刻的经历。

大概三年前,曾经整理过这样两篇文章《JavaScript函数究竟是值传递还是引用传递?》、《Java方法究竟是值传递还是引用传递?》,不为别的,只因为在工作中有人遇到类似问题,查阅资料后加以整理。巧的是,前阵子做php的同事又造出了相似的bug,不同的是,php并不像前两者一切皆值传递。

在php的世界里,存在传值和传引用两种方式

查看更多...

使用mpvue开发小程序——vuex、router的支持

继续前面话题,mpvue提供了vue的语法编译为小程序的能力,但语法上局限实在有点多。

当然,其根因还是小程序官方的限制,以致于我们vue中常用vuex、router都支持有限,截止发文时间,mpvue对vuex全局store的支持也有所提升,目前可以说基本满足需求,这里不再赘述。

使用上,vuex和以往类似,不同的是,小程序以多页形式渲染,故每个页面都需要创建vue实例并引入相应的store模块 查看更多...

使用mpvue开发小程序——axios发送ajax请求

依托于热门的小程序,美团最近开源的mpvue一下子火了,刚好项目上有需求想试用下mpvue,发现众多限制下,连目前常用的ajax请求库axios都不能正常构建。

默认添加了axios,你可能得到如下错误

thirdScriptError 
 sdk uncaught third Error 
 util.inherits is not a function 
 TypeError: util.inherits is not a function

因为项目为开发平台,不少用户重度依赖axios,一开始建议小伙伴尝试写adapter支持小程序请求,小伙伴反馈了如上错误,并建议使用社区宣传比较火热的fly。fly其实api和axios几乎一致,但还是有差异,未防止核心库变更对平台客户带来不便,决定展开axios代码一探究竟。 查看更多...

在 Spring(Spring Boot) 中应用 Kotlin

Kotlin 已悄然成为 Spring 继支持 Groovy 后的第二个 JVM 语言。持续关注 Java 的同时,也顺手在 Spring 上体验了一把。

本例简单记录 Kotlin 的初始化以及配置文件的输出,建立在熟悉 Spring、Spring Boot 及 Kotlin 的基础上,如对 Spring 框架或 Kotlin 语言比较陌生,建议先行了解。

1、创建项目

springboot-1
查看更多...

Webpack4.0.0(4.0.1)正式发布,最高提速98%

最近两天前端界有个热门话题,就是 webpack 发布了4.0.0版本,随之又发布了4.0.1修复了4.0.0发现的bug,那么 webpack 4的发布到底有什么大改变呢?

详见官方发布日志:

https://github.com/webpack/webpack/releases/tag/v4.0.0
https://github.com/webpack/webpack/releases/tag/v4.0.1

至于升级嘛,经测试,在 webpack 3.x基础上升级至 webpack 4,首先出现的就是 UglifyJsPlugin、CommonsChunkPlugin 两个插件的废弃,改为内置提供,其余常用 loader(如file-loader、url-loader等)也都提供了想对应的兼容版本,升级 webpack 4后移除 UglifyJsPlugin 和 CommonsChunkPlugin 两插件(以 optimization 配置取代),再逐一升级其余 loader,基本满足需求。 查看更多...

Java命令行信息国际化输出造成的困扰及解决

最近使用一个第三方开源程序,maven的项目,启动前会跑一遍测试用例,以保障程序正确性,可在本地启动的时候发现一直通不过,重复clean install多次无果。

本地-X打开maven日志,发现某个用例是根据java底层抛出的错误信息做比较,但由于是国外框架,用例都采用英文,而本地由于国际化原因,错误信息是中文,故此类直接拿java底层错误信息做对比的用例都会失败。

解决方法 查看更多...

iOS下AJAX请求遇HTTP状态码401持续pending问题解决

最近项目上遇到这样一个问题,iOS 系统,在 AJAX 请求发出后,因授权原因返回 401,发现一直 pending,查了很久发现 SO 上有类似提问。

主要原因是,当 AJAX 返回带 WWW-Authenticate 信息的 401 响应时,Web 容器 (浏览器或 WebView )会尝试弹出弹出框让你输入认证信息。但是在 iOS 平台,系统的某些默认行为会导致请求没有被发送到应用层。因此,AJAX请求会处于 pending 状态。

因为项目并不是基于 HTTP 认证的,而服务端采用的 IIS,默认开启了相关配置,最终为解决问题,选择了删除响应头中所有的 WWW-Authenticate 信息。 查看更多...

Vue上拉加载下拉刷新组件分享

项目需要,基于IScroll5简单写了个上拉加载、下拉刷新的组件。

代码简单分享一下。

老规矩,代码放github,方便取用。

PS:因为只是留个备份,简单从业务代码中剥离,未做测试和构建,暂时也没有发布到npm,文档嘛,自己看代码吧。 查看更多...

Spring Boot热部署配置方案

最近朋友吐槽新公司使用Spring boot,不会热更新,改个js都会重启,尝试及搜索后,总结下有三种方案:

1、使用springloaded

配置pom.xml文件新增如下:

maven

<!-- spring boot热部署 -->
<!-- https://mvnrepository.com/artifact/org.springframework/springloaded -->
<dependency>
    <groupid>org.springframework</groupid>
    <artifactid>springloaded</artifactid>
    <version>1.2.8.RELEASE</version>
</dependency>

gradle

// https://mvnrepository.com/artifact/org.springframework/springloaded
compile group: 'org.springframework', name: 'springloaded', version: '1.2.8.RELEASE'

查看更多...