之前,一直在纠结是学习angular好,学习vue好,还是学习react好,网上一搜索,也是各种对比,各种互喷,看过之后更纠结.就跟小时候一样纠结长大了是上清华好,还是上北大好,最后证明我想多了.总之,选择一个中意的,管他好不好,就是干,不试又怎么知道-  我学习react是从新手教程这篇大神的帖子开始的.虽然是跟着大神的步骤一步一步来,但还是免不了出错.遇到的第一个错误就是output.path不是绝对路径.报错是这样式儿的 最后通过查文档查资料,终于解决了,两种方法,分别是这样式儿的. (一…
目的 热修复去年年底出的时候,变成了今年最火的技术之一.依旧记得去年面试的时候统一的MVP,然而今年却变成了RN,热修复.这不得不导致我们需要随时掌握最新的技术.不然可能随时会被淘汰.记得刚进公司,技术总监就给我们布置了学习RN和热修复的任务.不过因为临时调整去了产品部.学习的时间变少了.最近抽空看了关于热修复.于是,便有了此文. 概述 关于热修复,说白了就是线上修复,这个基本就不用多解释了.因为如果出了紧急bug.天天更新.用户不嫌烦我都嫌烦.而且频繁更新会导致用户的损失. 现在热修复的技术基…
前面的文章:多线程爬坑之路-学习多线程需要来了解哪些东西?(concurrent并发包的数据结构和线程池,Locks锁,Atomic原子类) 多线程爬坑之路-Thread和Runable源码解析 前面大致的了解了Thread的一些方法和属性下面对一些方法进行运用看看具体效果<下面可能还是会贴很多的源代码,其实我是拒绝的,我只想贴每个方法的代码,但是有时候看到一个方法里面有调用了方法,但是笔者有没有给出来,很蛋疼,有种爽到一半的感觉,所以我还是会把它贴出来,希望一次就能挖到底,不论有没有全懂,但至…
Vue 原本有一个官方推荐的 ajax 插件 vue-resource,但是自从 Vue 更新到 2.0 之后,官方就不再更新 vue-resource 目前主流的 Vue 项目,都选择 axios 来完成 ajax 请求,而大型项目都会使用 Vuex 来管理数据,所以这篇博客将结合两者来发送请求 前言: Vuex 的安装将不再赘述,可以参考之前的博客 Vue 爬坑之路(四)-- 与 Vuex 的第一次接触 使用 cnpm 安装 axios cnpm install axios -S 安装其他插…
迄今为止做的最大的 Vue 项目终于提交测试,天天加班的日子终于告一段落... 在开发过程中,结合 Vue 组件化的特性,开发通用组件是很基础且重要的工作 通用组件必须具备高性能.低耦合的特性 为了满足这些特性,开发的时候有很多需要注意的地方,这里我和大家分享一下我的心得 一.数据从父组件传入 为了解耦,子组件本身就不能生成数据.即使生成了,也只能在组件内部运作,不能传递出去. 父对子传参,就需要用到 props,通常的 props 是这样的:…
vue-cli 是一个官方发布 vue.js 项目脚手架,使用 vue-cli 可以快速创建 vue 项目,GitHub地址是:https://github.com/vuejs/vue-cli vue/cli 3.x 已经发布,如果使用 3.x 构建项目,请参考<Vue 爬坑之路(十二)—— vue-cli 3.x 搭建项目> 一. 安装 node.js 首先需要安装node环境,可以直接到中文官网http://nodejs.cn/下载安装包. 只是这样安装的 node 是固定版本的,如果需要…
Vue Cli 3 官方文档:https://cli.vuejs.org/zh/guide/ 一.安装 @vue/cli 更新到 3.x 之后,vue-cli 的包名从 vue-cli 改成了 @vue/cli 如果之前全局安装了旧版本的 vue-cli (1.x 或 2.x),首先需要使用以下命令卸载掉 // 如果没有安装旧版本的 vue-cli 可以跳过卸载直接安装 npm uninstall vue-cli -g # OR yarn global remove vue-cli 然后重新安装…
React爬坑秘籍(一)--提升渲染性能 ##前言 来到腾讯实习后,有幸八月份开始了腾讯办公助手PC端的开发.因为办公助手主推的是移动端,所以导师也是大胆的让我们实习生来技术选型并开发,他来做code review.之前也学习过React,当然也是非常合适这一次的开发. 我会梳理这一个月来,自己对架构的思考过程和踩过的坑.当然这一切都不一定是最佳的,所以希望能有更多的建议和讨论. 例子所需库:Webpack.React.Immutable.其中Webpack用于前端构建,如果不清楚的同学可以看这…
最近在做项目的时候遇到一个问题,在 react 组件 unmounted 之后 setState 会报错.我们先来看个例子, 重现一下问题: class Welcome extends Component { state = { name: '' } componentWillMount() { setTimeout(() => { this.setState({ name: 'Victor Wang' }) }, 1000) } render() { return <span>Welc…
在进行SSM框架的日志框架统一管理时,报错Class path contains multiple SLF4J bindings 如下图 意思是类路径下包含重复的SLF4J绑定,然后给出了重复的两个全路径类名,所以导致日志启动失败. 查看Maven依赖图 由于项目使用Logback作为日志实现,所以只要找到是哪个包依赖于另一个包,把这个包排除掉即可.在pom.xml文件中加入以下配置即可排除 <dependency> <groupId>org.someexternallib<…