草庐IT

vue大型电商项目尚品汇(前台篇)day01

学完vue2还是决定先做一个比较经典,也比较大的项目来练练手好一点,vue3的知识不用那么着急,先把vue2用熟练了,vue3随时都能学。这个项目确实很经典包含了登录注册、购物车电商网站该有的都有,后面还会结合elementUI构件后台管理界面。拭目以待!一.初始化脚手架环境vuecreate创建vue的脚手架环境里面什么是什么配置文件这些就不同多说了,前面已经说过了,来说一下没有说过的一些配置。当我们npmrunserve跑项目的时候自动打开浏览器,对package.json启动serve的命令加一个open参数关闭eslint校验功能src文件简写,配置他的别名,因为后面可能经常会引入这个

vue大型电商项目尚品汇(前台篇)day02

现在正式回归,开始好好做项目了,正好这一个项目也开始慢慢的开始起色了,前面的准备工作都做的差不多了。而且我现在也开始慢慢了解到了一些项目才开始需要的一些什么东西了,vuex、router这些都是必备的,后期一定要练得非常熟练才行。一.重写push/replace方法有一个编程式导航的bug,当我们重复点击编程时导航的跳转,同时传的都是相同的参数,这个时候就会报错,报NavigationDuplicated,这是一个底层错误,归根结底是因为vue在2的版本将编程式导航跳转的添加了一个promise,我们都知道promise是需要一个成功回调和失败回调的,而我们在发起跳转的时候并没有定义这些,所以

vue大型电商项目尚品汇(前台篇)day02

现在正式回归,开始好好做项目了,正好这一个项目也开始慢慢的开始起色了,前面的准备工作都做的差不多了。而且我现在也开始慢慢了解到了一些项目才开始需要的一些什么东西了,vuex、router这些都是必备的,后期一定要练得非常熟练才行。一.重写push/replace方法有一个编程式导航的bug,当我们重复点击编程时导航的跳转,同时传的都是相同的参数,这个时候就会报错,报NavigationDuplicated,这是一个底层错误,归根结底是因为vue在2的版本将编程式导航跳转的添加了一个promise,我们都知道promise是需要一个成功回调和失败回调的,而我们在发起跳转的时候并没有定义这些,所以

vue大型电商项目尚品汇(前台篇)day03

堆积了两天一起发的,先祝大家节日快乐后面任务很繁重,还有登录注册组件还有后台管理页面,真的繁重,我现在感觉每天全天时间都在学都不一定学得完,主要想在六月一号之前把整个项目过一遍。看看能不能创造奇迹一.防抖和节流抛出一个问题,就是我们的三级联动,正常情况你慢慢的去滑动是没有bug的,但是当你快速的从上往下滑一圈,你会发现只会触发几个标题,如果这个时候我们的回调也就是滑动的事件函数里面有大量的业务逻辑,他会执行完一个再去执行另一个,但是你已经滑完很久了,所以这个时候页面就会有卡顿现象1.防抖什么是防抖?防抖就是一个事件触发多次,最终只会有触发一次的结果。我们这里防抖和节流采用一个Lodash的插件

vue大型电商项目尚品汇(前台篇)day03

堆积了两天一起发的,先祝大家节日快乐后面任务很繁重,还有登录注册组件还有后台管理页面,真的繁重,我现在感觉每天全天时间都在学都不一定学得完,主要想在六月一号之前把整个项目过一遍。看看能不能创造奇迹一.防抖和节流抛出一个问题,就是我们的三级联动,正常情况你慢慢的去滑动是没有bug的,但是当你快速的从上往下滑一圈,你会发现只会触发几个标题,如果这个时候我们的回调也就是滑动的事件函数里面有大量的业务逻辑,他会执行完一个再去执行另一个,但是你已经滑完很久了,所以这个时候页面就会有卡顿现象1.防抖什么是防抖?防抖就是一个事件触发多次,最终只会有触发一次的结果。我们这里防抖和节流采用一个Lodash的插件

C++Day09 深拷贝、写时复制(cow)、短字符串优化

一、std::string的底层实现1、深拷贝1classString{2public:3String(constString&rhs):m_pstr(newchar[strlen(rhs)+1]()){4}5private:6char*m_pstr;7};这种实现方式,在需要对字符串进行频繁复制而又并不改变字符串内容时,效率比较低下。如果对一块空间只是进行读,就没必要采用深拷贝,当需要进行写的时候,再使用深拷贝申请新的空间2、写时复制(浅拷贝+引用计数) 当只是进行读操作时,就进行浅拷贝,如果需要进行写操作的时候,再进行深拷贝;再加一个引用计数,多个指针指向同一块空间,记录同一块空间的对象个

C++Day09 深拷贝、写时复制(cow)、短字符串优化

一、std::string的底层实现1、深拷贝1classString{2public:3String(constString&rhs):m_pstr(newchar[strlen(rhs)+1]()){4}5private:6char*m_pstr;7};这种实现方式,在需要对字符串进行频繁复制而又并不改变字符串内容时,效率比较低下。如果对一块空间只是进行读,就没必要采用深拷贝,当需要进行写的时候,再使用深拷贝申请新的空间2、写时复制(浅拷贝+引用计数) 当只是进行读操作时,就进行浅拷贝,如果需要进行写操作的时候,再进行深拷贝;再加一个引用计数,多个指针指向同一块空间,记录同一块空间的对象个

C++Day12 虚拟继承内存布局测试

测试一、虚继承与继承的区别1.1单个继承,不带虚函数1>classBsize(8):1>+---1>0|+---(baseclassA)1>0||_ia//4B1>|+---1>4|_ib//4B有两个int类型数据成员,占8B,基类逻辑存在前面1.2、单个虚继承,不带虚函数1>classBsize(12):1>+---1>0|{vbptr}//虚基指针(指向虚基表)1>4|_ib//派生类放到前面1>+---1>+---(virtualbaseA)//虚基类1>8|_ia1>+---1>B::$vbtable@://虚基表1>0|0//虚基指针距离派生类对象偏移0B1>1|8(Bd(B+0)

C++Day12 虚拟继承内存布局测试

测试一、虚继承与继承的区别1.1单个继承,不带虚函数1>classBsize(8):1>+---1>0|+---(baseclassA)1>0||_ia//4B1>|+---1>4|_ib//4B有两个int类型数据成员,占8B,基类逻辑存在前面1.2、单个虚继承,不带虚函数1>classBsize(12):1>+---1>0|{vbptr}//虚基指针(指向虚基表)1>4|_ib//派生类放到前面1>+---1>+---(virtualbaseA)//虚基类1>8|_ia1>+---1>B::$vbtable@://虚基表1>0|0//虚基指针距离派生类对象偏移0B1>1|8(Bd(B+0)

day01入门

java入门常识快捷方式:本质上链接到了真正的程序上,使用方便;环境变量:环境变量是操作系统中的一个配置,专门用来配置路径的,配置到环境变量中的路径,可以在任何地方访问或使用(仅限于命令行窗口);当我们在某个路径下面执行A程序时,计算机优先从当前目录下找A,如果没有,就去环境变量中查找IDE(IntegratedDevelopmentEnvironment):集成开发环境Java手动配置环境变量java相关的一些开发工具,需要用到Java和Javac等程序,例如idea、eclipse...,需要知道java和Javac的路径,通过查环境变量使用,以下列出两种配置环境变量的方式(推荐使用方式二