- 博客(39)
- 收藏
- 关注
原创 关于vue2项目引入vue-router的一些坑
在main.js文件中引入vue-router时,我在new vue({})这里碰到一点小坑,import test from './router’这里我随便取了一个名字直接放到new vue({test,})里,没想到直接报TypeError: route is undefined"的错,因为new vue里用了缩略写法,所以想要自定义router名字的话要这么写!!!:new vue({router:test})...
2022-04-08 13:59:53
858
原创 vue-router路由重定向redirect的使用事项
vue-router路由重定向redirect的使用事项在一个路由使用redirect重定向到另一个路由时,这个路由本身也需要component对应一个页面,而且这个页面里还要有< router-view >< /router-view>最终才能成功的跳转...
2022-04-07 09:37:20
2945
原创 vue中$的使用
$默认为全局property,使用Vue.prototype. $xx声明的property是不想污染全局作用域,一些组件引入后会留一个实例property如echartimport echarts from 'echarts',留下echarts实例供我们调用。使用vue.prototype. $echarts = echarts后,我们就能直接使用 $echarts避免重名...
2022-03-24 16:25:21
2592
原创 vue中拼接src路径的问题
vue中直接在src中使用拼接路径是没有用的,需要加上require::src=“require(‘路径’+参数)”
2022-02-25 15:41:29
800
原创 样式穿透的使用细节
无论是使用/deep/还是::v-deep进行样式穿透时,只需要找到该组件最上层的样式加上/deep/和::v-deep,下层样式不用加,会造成穿透失效。
2022-02-24 16:26:12
148
原创 关于vue-cli中~和~@的区别
@是自定义路径,一般默认为src,在webpack.base.conf.js或vue.conf.js中配置@与~都是 路径别名,方便我们引用文件。@主要使用在js与html内,~则是在@之前添加,即 @,@在<style></style>中的css样式里识别不了,需要用@。...
2021-12-24 10:29:13
891
原创 vue watch属性中的回调函数和箭头函数
回调函数中的this会指向全局对象,而vue的module默认使用严格模式回调函数中的this会指向undefined,那watch属性中的回调函数怎么指向vm实例呢,原因是在watch的源码里使用了call指定了this是vm实例箭头函数不能在watch里使用,因为箭头函数本身没有this,无法使用call指定this,箭头函数的this就是定义时上层作用域中的this,这个this是固定的无法通过that改变const obj = { bg:() => { consol
2021-10-23 13:38:12
1045
原创 flex布局的一些特性
我们在给主体盒子加背景图片的时候会注意到,如果主体盒子没有设置宽高,而里面的盒子设置了外边距,那么背景图就会空出外边距的部分。 但flex布局中会自动填补外边距的空缺。
2021-10-14 09:14:27
175
转载 js Dom事件
1.onclick:点击事件2.ondbclick:双击事件3.onmousedown:鼠标按下事件4.onmouseup:鼠标松开事件5.onmouseenter:鼠标移入事件(不支持冒泡,只触发一次)6.onmouseover:鼠标被移动事件(支持冒泡,只触发一次)7.onmousemovee:鼠标移入事件(元素内移动都会触发,获取坐标值)8.onmouseleave:鼠标移除事件(不支持冒泡)9.onmouseout:鼠标移除事件(支持冒泡)10.onkeydown:键盘按下事件1
2021-10-12 23:17:08
70
原创 Dom事件
1.onclick:点击事件2.ondbclick:双击事件3.onmousedown:鼠标按下事件4.onmouseup:鼠标松开事件5.onmouseenter:鼠标移入事件(不支持冒泡,只触发一次)6.onmouseover:鼠标被移动事件(支持冒泡,只触发一次)7.onmousemovee:鼠标移入事件(元素内移动都会触发,获取坐标值)8.onmouseleave:鼠标移除事件(不支持冒泡)9.onmouseout:鼠标移除事件(支持冒泡)10.onkeydown:键盘按下事件1
2021-10-12 23:10:52
59
原创 vue中的全局对象
vue中最高的this并不是全局对象,windows才是全局对象,所以全局对象是访问不到vue中data的property。想在回调函数中使用this的话需要更改指向。
2021-09-28 20:13:30
1793
原创 js中的数据类型转化
基本类型的转化Number:null 转换为 0undefined 转换为 NaNtrue 转换为 1,false 转换为 0字符串转换时遵循数字常量规则,转换失败返回NaNString:null 转换为 ‘null’undefined 转换为 undefinedtrue 转换为 ‘true’,false 转换为 ‘false’数字转换遵循通用规则,极大极小的数字使用指数形式Boolean:除了下述 6 个值转换结果为 false,其他全部为true:undefined
2021-09-25 20:23:37
610
原创 js的预编译
js特性JS有两个特性,一个是单线程,一个是解释性语言。不同于编译性语言,解释性语言通常理解为不整体编译,由解释器解释一句执行一句。但JS不是直接对着代码解释执行,在解释执行之前,需要进行预编译,进行预编译可以使js变的更加灵活,而不是代码从头到尾一句句编译执行。AO对象AO对象是js进行预编译的关键,js代码在执行的过程中会先进行一次预编译,每个函数都会产生一个AO对象,AO对象将函数的形参以及函数里面声明的变量当做AO对象的属性名,值全部为undefined。然后将实参的值给形参,最后处理声明函数
2021-09-24 16:20:16
97
原创 浮动的清除
浮动在带来方便的同时也给我们的布局带来了困难,为了消除不好的影响,我们需要动用一些方法来清除浮动造成的影响。给父盒子设置高度 :这个适用于父盒子内的元素已经全部脱离文档流,这时父盒子高度会变为0,而后面的元素也会占据脱离元素的位置,但由于脱离文档流会提高元素层级,所以后面元素会被脱离元素覆盖。解决这个问题的办法就是给父盒子设置高度。使用clear:适用于清除给浮动元素后面的元素加上clear:both;就可以清除浮动元素对它造成的影响,不会占据浮动元素的位置。使用::after伪元素:
2021-09-18 20:29:06
77
原创 css的盒子外边距margin会重叠
在css里有一个奇怪的特性,就是两个或多个盒子(可能相邻也可能是父子)的相邻边界(其间没有任何非空内容、补白、边框)重合在一起而形成一个单一边界。相邻盒子边界的计算方式:全部都为正值,取最大者不全是正值,则都取绝对值,然后用正值的最大值减去绝对值的最大值没有正值,则都取绝对值,然后用0减去最大值。解决方法:任意一个盒子触发bfc;两个盒子统一用margin-top或margin-bottom父子盒子边界的计算方式父盒子如果没有border和padding的话,子盒子的margin会传递给
2021-09-16 18:25:11
385
转载 浮动元素与定位元素的关系
<style> .a { /* float: left; */ height: 100px; width: 100px; background-color: aqua; } .b { position: absolute; height: 100px; width: 100px; background-color: red; }</style><body> <div class=
2021-09-16 13:20:44
215
原创 js的作用域和vue的作用域
js有两种作用域:全局作用域和局部作用域1. 全局作用域如果一个变量在函数外面或者大括号{}外声明,那么就定义了一个全局作用域2. 局部作用域有两种,函数作用域和块级作用域,函数作用域顾名思义就是在函数内定义的变量,而块级作用域则是使用let定义在{}内的变量,let定义的变量有两点不同,不允许重复命名和不会变量提升。vue有四种作用域:全局作用域,子树作用域,组件作用域和实例作用域1. 全局作用域Vue 应用程序中的全局作用域与任何编程语言中的全局作用域类似,这些变量在应用程序中的任何地方都
2021-09-14 17:27:06
397
原创 js中Null和Undefined类型的区别
用java的视角来看,Null就是一个对象被实例化,但这个实例是空的,在堆中并没有这个实例的空间,而Undefined就是一个对象没有被实例化。在js中null更多的时候被用来释放对象的内存,而undefined像是一个警告类型,提醒程序员该对象没有被实例化。...
2021-09-12 21:32:12
78
原创 js中的||和&&运算符
js里的||和&&运算符并不是单纯的返回一个Boolean类型的值,返回的是表达式,这涉及到了js中的类型转化,js中的原始类型的值是不会改变的,在运算过程中是系统调用了相关方法返回了新的值,其实原来的值并没有改变,如果你在if或者for中使用||或&&也是如此,返回的并不是Boolean类型的值,但系统自动帮你类型转化了。...
2021-09-12 20:42:14
140
原创 css中postiton的absolute和fixed
很多人都以为这两种绝对定位都是相对于浏览器窗口进行定位,但其实不是,absolute是相对于上一个非static定位的父元素进行定位,很多时候并没有这样一个父元素,就只能相对浏览器窗口定位了...
2021-09-10 16:47:48
171
原创 iconfont引入vue找不到文件
文件查找失败:’./css/font/iconfont.ttf?t=1631234320335’ at App.vue:7解决方法:使用绝对路径url(’@/static/css/font/iconfont.woff2?t=1631234320335’) format(‘woff2’)
2021-09-10 09:05:02
524
原创 js中的symbol
这里写目录标题symbol是什么symbol用来干什么注意事项symbol是什么symbol是es6新引入的原始类型,通过 Symbol 函数调用生成,由于生成的 symbol 值为原始类型,所以 Symbol 函数不能使用new 调用,只能直接调用symbol函数生成( Symbol(‘’));symbol用来干什么symbol函数最重要的特性就是它生成的值是唯一的,因为项目越来越大时,对象的属性名可能会重复,而symbol可以作为属性名,防止属性名冲突let test1={ name:'
2021-09-09 18:18:16
439
转载 timestamp的属性
在创建时间字段的时候DEFAULT CURRENT_TIMESTAMP表示当插入数据的时候,该字段默认值为当前时间ON UPDATE CURRENT_TIMESTAMP表示每次更新这条数据的时候,该字段都会更新成当前时间这两个操作是mysql数据库本身在维护,所以可以根据这个特性来生成【创建时间】和【更新时间】两个字段,且不需要代码来维护CREATE TABLEmytest(textvarchar(255) DEFAULT '' COMMENT '内容',create_timetimestamp
2021-09-02 16:27:10
187
原创 Nacivate在事件里设置定时任务
新建函数,选择过程然后跳过向导直接完成,在begin和end之间写下sql语句,保存过程;在事件里写入call 过程名持续每天一次,下面为开始时间开启事件set global event_scheduler=1;想让事件一直保持开启,可以修改配置文件,让 mysql 服务启动的时候开启事件,只需要在my.ini(我的在C:\ProgramData\MySQL\MySQL Server 5.6路径下)配置文件的 [mysqld] 节点部分加上 event_scheduler=1...
2021-09-02 16:06:07
238
原创 vue中data为什么要用函数
组件作用域注意组件中的data必须使用函数`,因为根实例使用一个组件就会创建一个实例,而同一个组件的实例会有一个组件作用域,又因为data中的变量是对象Object,所以相同的对象指向的都是同一个栈地址,又因为它们在同一个作用域下,所以后面对象的值指向的堆地址就会覆盖前面的对象。但在使用了函数以后,每个实例都有了一个函数作用域,不同作用域下对象就不会再影响。data: function () { return { //data属性的property }}...
2021-08-31 19:57:43
314
原创 vue的模块语法
vue的模块语法使得vue实例中的数据,方法和计算可以声明式的绑定到DOM,而且模块语法是基于html的,因此最终的html是合法的 HTML,可以被浏览器识别。但模块语法不仅仅只能绑定vue实例相关,同样可以在模块语法中绑定javascript表达式,javascript表达式一般有原始表达式,运算表达式和调用表达式。原始表达式:单个所有数据类型的值运算表达式:由原始表达式加上运算符组成调用表达式:调用某个函数的方法...
2021-08-30 15:03:44
101
原创 vue中的计算属性和方法属性和侦听器
这两个属性中的函数是差不多的,都可以直接使用模板语法调用,方法可以有返回值也可以没有,计算必须要有返回值。但根据我的观察并不是可以随意调的,比如事件处理器,调用计算属性是会报错的,因为事件处理器是不需要返回值的(可能是这个原因)...
2021-08-17 20:48:13
105
转载 post和get的区别
GET和POST两种基本请求方法的区别GET和POST是HTTP请求的两种基本方法,要说它们的区别,接触过WEB开发的人都能说出一二。最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数。你可能自己写过无数个GET和POST请求,或者已经看过很多权威网站总结出的他们的区别,你非常清楚知道什么时候该用什么。当你在面试中被问到这个问题,你的内心充满了自信和喜悦。你轻轻松松的给出了一个“标准答案”:GET在浏览器回退时是无害的,而POST会再次提交请求。 G
2021-06-06 15:17:30
95
原创 关于java对象和JSON格式的相互转化
可以使用一个名为Fastjson的java库1.将对象转化成JSONString str=JSON.toJSONString(object);可以在javaBean使用@JSONField来控制JSON的属性@JSONField可以添加在javaBean的属性和方法上@JSONField(name=" "//控制对应属性在JSON的名称,serialize=false//属性的顺序不再默认,这个只需添加在开头ordinal=数字 //控制属性的顺序)2.将JSON转化成对象Object ob
2021-05-20 13:55:06
829
原创 语言的类型
一些语言的类型Python是动态类型/强类型/脚本型/通用语言C是静态类型/弱类型/非脚本型/通用语言Java是静态类型/强类型/非脚本型/通用语言JavaScript是动态类型/弱类型/脚本型/通用语言Go是静态类型/强类型/非脚本型/通用语言关于javaScriptJavaScript脚本语言具有以下特点:(1)脚本语言。JavaScript是一种解释型的脚本语言,C、C++等语言先编译后执行,而JavaScript是在程序的运行过程中逐行进行解释。(2)基于对象。JavaScript
2021-05-10 07:55:01
386
原创 springboot中的注入
spring中的注入大多还是用于javabean中,用来注入bean中大量的变量和方法,但在springboot中由于使用了mybatis,bean可以被当作一个类型来使用和赋值,因此现在大多使用@Resource和@Autowired来向spring管理中的一个实现类注入一个实现类(这个实现类需要使用@serve或其他的标签来登记),之前在spring中的实现类我个人理解为一个空壳,因为他并没有实现接口,在注入实现类后才成为真正的实现类。...
2021-04-17 20:35:27
203
原创 vue中的属性与对象
关于vue中的属性与对象个人认为vue中对象与java的对象含义有所不同,vue中的对象里面不光能够放属性和方法,还能够放对象和对象数组,类似于c中的结构体。vue所创建的实例还是和java中的实例有很大不同,它实例中的属性名和对象名都是有意义的,并不是java中可以自己随意取名,相应的属性名和方法名都可以是对应的html的dom结构更好的识别。vue最大的特点个人认为是嵌套和重复利用,vue中代码利用性特别高,而且嵌套可以使vue更加灵活。...
2021-04-17 19:59:07
484
原创 springboot配置使用sql文件
在application.yml文件里进行配置spring:datasource:schema: classpath:schema.sql//主要用于创建表的语句data: classpath:data.sql//主要存放插入数据及更新操作initialization-mode: always//总是执行
2021-04-07 15:34:51
535
原创 @Mapper@MapperScan和@Repository的使用
这三个注释都能使接口类变成实现类,@Mapper和@Repository只能注释当前接口类,而@MapperScan可以让指定路径下的所有接口类全部被注释@MapperScan是要spring启动时,扫描到所有的Mapper文件,并生成代理类交给spring容器管理;@Mapper注解,当项目启动时,扫描到被此注解标识接口类,就会创建代理类并交给spring容器管理。@Repository注解是spring的注解,主动标识当前类要交给spring容器管理(相当于@Component注解)。注:@
2021-04-03 12:30:37
1054
原创 mybatis中type-aliases-package的用法
springboot项目中的application.yml文件中的mybatis:type-aliases-package:什么时候用mapper.xml文件中resultMap的type、parameterType、resultType会引用一些实体类,我们需要写上全限定类名,如果不写全限定类名,只写一个实体类的名称的话,那就需要在application.yml文件中设置mybatis:type-aliases-package参数;怎么写application.yml中的mybatis:type-
2021-03-28 15:25:20
25015
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人