![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
技术分享
seeyousayhi
web coder
展开
-
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 · 116 阅读 · 0 评论 -
实现一个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 · 192 阅读 · 0 评论 -
从源码入手来分析Vue中常用的写法
从源码入手来分析Vue中常用的写法(持续更新中···) 如何调试源码请参考另一篇文章(https://blog.csdn.net/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 · 246 阅读 · 0 评论 -
源码调试技巧
分享一个源码调试技巧,以VUE为例 1.首先clone vue源码 (https://github.com/vuejs/vue.git) 目录结构 2.安装依赖 3.在package.json中的dev命令加上 --sourcemap,然后起一个webpack-dev-server,添加一个start 5. npm run dev 之后会在dist目录下生成一个vue.js.map的映射文件 6.新建一个html文件,引入dist中的vue.js,创建一个vue实例,然后打开浏览器的Sources C原创 2020-08-18 00:12:26 · 511 阅读 · 1 评论