- 博客(4)
- 收藏
- 关注
原创 Vue组件data为什么必须是个函数而跟实例则没有此限制?
Vue组件data为什么必须是个函数而跟实例则没有此限制?源码位置:src\core\instance\state.js - initData()\src\core\instance\init.js函数每次执行都会返回全新的data对象实例上测试代码:<script src="./dist/vue.js"></script><body> <div id="app"> <test></test>
2020-09-14 20:41:26
144
原创 实现一个vue-router
实现一个vue-router我们都知道Vue提供了两种路由方式(hash/history),这两种方法都是利用了浏览器自身的特性。1.mode: hash -> www.router.com/#/myrouter hash的值就是 #/myrouter,特点是虽然出现在url中,但是不会出现在http请求中,对后端没影响,其改变不会引起页面重新加载。2.mode:history -> 利用了H5中 History Interface 新增的 pushState 和 replaceS
2020-08-21 00:02:04
217
原创 从源码入手来分析Vue中常用的写法
从源码入手来分析Vue中常用的写法(持续更新中···)如何调试源码请参考另一篇文章(https://blog.youkuaiyun.com/seeyousayhi/article/details/108067185)先说几个高频点1.v-if和v-for优先级问题1.v-if和v-for优先级问题先上代码,需求是根据list里面的 isShow来判断显隐,来看看这种写法的渲染函数是怎样的,打印一下render内容<div id="app"> <div>
2020-08-19 22:52:22
274
原创 源码调试技巧
分享一个源码调试技巧,以VUE为例1.首先clone vue源码 (https://github.com/vuejs/vue.git)目录结构2.安装依赖3.在package.json中的dev命令加上 --sourcemap,然后起一个webpack-dev-server,添加一个start5. npm run dev 之后会在dist目录下生成一个vue.js.map的映射文件6.新建一个html文件,引入dist中的vue.js,创建一个vue实例,然后打开浏览器的SourcesC
2020-08-18 00:12:26
589
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人