- 博客(55)
- 收藏
- 关注
原创 Flutter容器
两个参数共同决定的。注意,这里的子元素指的是子widget的最大显示空间,注意确保子widget的实际大小不要超出子元素的空间, 代码示例如下。是最常用的可滚动widget,它可以沿一个方向线性排布所有子widget, 类似于。,我们通过它可以快速的创建侧轴子元素为固定最大长度的的GridView。可以构建二维网格列表, 系统给出了五中构造函数。,我们通过它可以快速的创建横轴固定数量子元素的。从上面的个属性可以发现,子元素的大小是通过。ListView共有四种构造函数。
2024-05-24 16:02:05
1040
原创 布局方式.
spaceAround:将主轴方向上的空白区域均分,使children之间的空白区域相等,但是首尾child的靠边间距为空白区域为1/2。spaceBetween:将主轴方向上的空白区域均分,使children之间的空白区域相等,首尾child靠边没有间隙。spaceEvenly:将主轴方向上的空白区域均分,使得children之间的空白区域相等,包括首尾child。start:将children放置在主轴的起点。end:将children放置在主轴的末尾。end:children在交叉轴上末尾展示。
2024-05-24 14:59:20
863
原创 基础widgets
当中几乎所有的对象都是widget,他跟原生开发的控线不一样,flutter开发当中,widget的概念更广泛一点,不仅可以表示ui元素,也可以表示一些功能性的组件,例如手势检测等。
2024-05-24 14:34:40
492
原创 Flutter
Flutter是Google推出并开源的移动应用开发框架,主打跨平台、高保真、高性能。开发者可以通过Dart语言开发App,一套代码同时运行在ios和安卓平台。提供组件、接口,开发者可以很快的为Flutter添加native扩展。同时Flutter还使用Native引擎渲染视图,为用户提供良好的体验特点跨平台自绘引擎高性能:页面刷新、通信等。
2024-05-15 16:33:09
1001
原创 大事件(over)
rule: 当前校验规则的相关的信息value: 所校验的表单元素的表单值callback:回调→两种调用方式:① callback() 校验成功 ②callback(new Error(错误信息)) 检验失败 [无论成功还是失败都需要callback回调]// 判断 value 和 当前 form 中收集的 password 是否一致if (value!callback(new Error('两次输入密码不一致'))} else {
2024-02-23 14:45:09
1188
原创 Vue3大事件项目(ing)
在线演示:https://fe-bigevent-web.itheima.net/login接口文档:https://apifox.com/apidoc/shared-26c67aee-0233-4d23-aab7-08448fdf95ff/api-93850835基地址:http://big-event-vue-api-t.itheima.netpnpm包管理器 - 创建项目一些优势:比统类工具快2倍左右、节省磁盘空间 https://www.pnpm.cn/安装方式:创建项目:配置文件 .esl
2024-02-06 19:50:25
1936
原创 初识vue3
因为npm的管理员权限问题,我这边不能直接在文件中右击执行windows power shall,所以要在管理员内执行,通过cd ~绝对路径进入文件内,然后再创建vue3👇。// 上面代码的意思式:一旦当当前这个这个count变化了,就会执行后面的回调,后面的回调当中可以拿到新值和老值(即变化前和变化后的)提供的任何数据或者函数想要在模板中应用,必须return.只有在对象当中return了,这个变量才能在页面当中应用。在上面的示例中,父组件通过props将message数据传递给子组件Child。
2024-02-03 14:49:17
1017
原创 vuex &store,mutations,getters,actions
目标:明确vuex是什么,应用场景,优势vuex是一个vue的状态管理工具,状态就是数据大白话:vuex是一个插件,可以帮我们管理vue通用的数据(多组件共享数据)①某个状态在很多个组件来使用(个人信息)②多个组件共同维护一份数据(购物车)①共同维护一份数据,数据集中化管理②响应式变化③操作简捷(vuex提供了一些辅助函数)
2024-01-29 19:15:11
1012
原创 面经基础版案例(路由,请求渲染,传参,组件缓存)
4.导航高亮效果5.首页的请求渲染8.组件缓存kepp-alive问题:从面经 点到 详情页,又点返回,数据重新加载了 → 希望回到原来的位置原因:路由跳转后,组件被销毁了,返回回来组件又被重建了,所以数据重新被加载了解决:利用keep-alive将组件缓存下来被缓存的组件会多两个生命周期actived和deactived
2024-01-28 21:54:48
1449
2
原创 路由进阶
文章目录1.路由的封装抽离2.声明式导航 - 导航链接3.声明式导航-两个类名自定义匹配的类名4.声明式导航 - 跳转传参查询参数传参动态路传参两种传参方式的区别动态路由参数可选符5.Vue路由 - 重定向6.Vue路由 - 4047.Vue路由 - 模式设置8.编程式导航 - 两种路由跳转9.编程式导航 - 路由传参1.路由的封装抽离问题:所有的路由配置都堆在main.js中合适吗?目标:将路由模块抽离出来。好处:拆分模块,利于维护之前所添加的路由配置都是写在main.js中的方法:src下
2024-01-28 15:53:59
1489
原创 路由、组件目录存放
生活中的路由:设备和ip的映射关系目标:认识插件 VuePouter ,掌握 VuePouter 的基本使用步骤作用:修改地址栏路径时,切换显示匹配的组件说明:Vue官方的一个路由插件,是一个第三方包官网:https://v3.router.vuejs.org/zh/
2024-01-27 16:40:14
1167
原创 综合案例 - 商品列表
文章目录需求说明my-tag组件封装(完成初始化)may-tag封装(控制显示隐藏)my-tag组件封装(v-model处理:信息修改)my-table组件封装(整个表格)数据不能写死,动态传递表格渲染的数据结构不能写死 - 多处结构自定义【具名插槽】案例完整代码:App.vueMyTag.vueMyTable.vueMain.js需求说明my-tag标签封装组件双击显示输入框,输入框获取焦点失去焦点,隐藏输入框回显标签信息修改内容,回车 → 修改标签信息my-table表格组件
2024-01-27 15:25:55
1086
原创 自定义指令
App.vue < template > < div > < h1 > 自定义指令 < input v-focus ref = " inp " type = " text " > < script > export default {
2024-01-26 18:21:49
1166
原创 组件冲突、data函数、组件通信
组件通信,就是指组件与组件之间的数据传递组件的数据是独立的,无法直接访问其他组件的数据。想用其他组件的数据 → 组件通信思考:1.组件之间有哪些关系?2.对应的组件通信方案有哪几类?// props: ["w"] //1.基础校验(类型校验) // props:{ // w:Number//Number String Boolean Array Object Function // } // 2.完整写法(类型、是否必填、默认值、自定义校验) props : {w : {
2024-01-25 20:39:30
1280
原创 网页首页案例(使用框架:继上一篇博客结尾)
新认识的快捷键1.Ctrl+滚轮按住往下拖可以部分选中.用同样的方法选中下面的111,然后用上图的选中后复制,粘贴在1的位置,就可以复制好了(用于代码较多,不方便一个一个改的时候)2.在一列文字后面Ctrl滚轮线下拖,不选中,然后回车+粘贴(就可以把你想要粘贴的内容复制到111下面,注意:复制粘贴内容的时候也要用Ctrl滚轮的方法)3.有时候看代码全部展开看太麻烦,可以用 Ctrl+k+0全部折叠,当你要展开时Ctrl+k+j就行了Ctrl+d选中一个后按住这个快捷键往下拉,
2024-01-24 11:30:56
673
原创 初识node.js(使用)
- 兼容:给不支持js的浏览器一个提示 --> < noscript > < strong > We're sorry but doesn't work properly without JavaScript enabled. Please enable it to continue.
2024-01-23 19:35:49
1747
原创 Vue生命周期;综合案例;工程化开发入门
Vue的生命周期 和 生命周期的四个阶段思考:什么时候可以发送初始化渲染请求?(越早越好:最早可以早到什么时候?)什么时候可以开始操作dom?(至少dom得渲染出来)Vue生命周期:一个Vue实例从***创建***到***销毁***的整个过程new Vue( ) ①创建(生命就开始了)→②挂载→③更新→④销毁(比如网页被关掉)①创建阶段(响应式处理):将普通数据转换成响应式数据:data其实是普通数据,但是在Vue在底层创建阶段的时候。就会对下面的普通数据来做一些响应式的处理,只有经过这一步,
2024-01-23 09:07:40
1110
原创 Watch(监视器)+(综合案例)
Watch侦听器(监视器)作用:监视数据变化,执行一些业务逻辑或异步操作语法:①简单写法 → 简单类型数据,直接监视②完整写法 → 添加额外配置项①简单写法<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0">
2024-01-22 16:54:36
574
原创 Vue——计算属性
文章目录计算属性computed 计算属性 vs methods 方法计算属性完整写法综合案例:成绩案例计算属性概念:基于现有的数据,计算出来的新属性。依赖的数据变化,自动重新计算语法:①声明computed配置项中,一个计算属性对应一个函数②使用起来和普通属性一样使用{{ 计算属性名 }}(平时声明属性是往data中放的,现在要往对应的computed中放👇)<script> computed:{ 计算属性名 () { 基于现有数据,编写求职逻辑 return 结
2024-01-21 19:01:45
1429
原创 Vue—指令
文章目录指令初识 和 v-htmlVue指令1.v-html(动态解析标签)2.v-show(display) VS v-if(添加和删除)3.v-else和v-else-if(与v-if一起使用)4.v-on①v-on两种用法②v-on调用传参5.v-bindv-bing对于样式控制的增强1°操作classclass:用对象方法写:案例:京东秒杀tab导航高亮2°操作stylestyle: 案例:动态控制进度条案例:图片的切换6.v-for (基于数据进行循环)案例:书架v-for中的key7.v-m
2024-01-21 14:47:28
1323
原创 初识VUE
在第三部分中,是通过控制台修改数据的,但我们可以用开发者工具,更方便快捷的调试修改数据(极简插件)//一旦引入Vuejs核心包,在全局环境,就有了 Vue 构造函数。表达式:是可以被求值的代码,JS引擎会将其计算出一个结果。(2)支持的是表达式,而非语句,比如2:if, for…//通过el配置选择器,指定Vue所管理的是哪个盒子。**1.作用:**利用表达式进行插值,渲染到页面中。(3)不能在标签属性中使用{{ }}插值。(1)使用的数据必须存在(data)插值表达式是一种Vue的模板语法。
2024-01-19 19:11:37
774
原创 正则表达式
正则的常用方法1.匹配(test)匹配字符串是否符合正则规则符合—>true不符合—>false语法: 2.捕获语法:组成1.元字符:正则表达式的规则符号2.修饰符:修饰整个正则表达式的符号1. ------ 表示一位(一个)数字(0~9)2. ------ 表示 一位 非数字(除了0~9)3. ------ 表示 数字(0~9)字母(a-zA-Z)下划线(_) 其中的 一个4. ------ 表示 除了 数字(0~9)字母(a-zA-Z)下划线 这些的某一个字符5. s --
2023-12-04 21:13:43
1042
原创 This详细用法
自定义函数中的this指向的是window,事件处理程序下的this,指向绑定这个事件的事件源对象,自定义对象下的方法中的this指向调用这个方法的对象,严格模式下自定义函数的this是undefined,定时器下的this指向的是window。可以使用bind(),call(),apply()改变this的指向,箭头函数里面的this来源于声明时所在的上一级this的指向,箭头函数里面的this指向不能改变。//console.log(obj.test)//打印的是函数,没有内容。//this 关键字。
2023-12-02 11:16:48
1270
原创 事件(笔记)
/只是页面禁用了,如果打开检查,删除disabled,还可以再次抽奖,所以就要用到事件解绑。//触发之后做什么 => function() {} => 这个事件的处理函数。//触发什么样的事件 => onclick => 这个事件类型就是click。1.当你点击div的时候,两个函数都会执行,并且会按照你注册的顺序倒叙执行。1.当你点击div的时候,两个函数都会执行,并且会按照你注册的顺序执行。//谁来触发事件 => oDiv => 这个事件的事件源就是oDiv。
2023-11-30 21:14:41
845
原创 DOM.案例
console.log("快到底了")//整个页面减去逐渐变大的滑动的页面小于100时,显示‘快到底了’”/*如果下面的if用的是“快到底了”的话,就加这一句,防止快到底的时候继续往下滑,一直触发*/一点击小眼睛,就能看到输入的内容,再点小眼睛,又变成密码框,这个类型操作的是。//想要实现点哪个删哪个,就需要知道点的是第几个按钮,可以用this。//点击item1,增加1的active,删掉2的active。了n个,每次创建li的时候,设置完里面的内。//this就是按钮本身,然后找到它的父节点。
2023-11-29 08:38:28
904
原创 DOM..
文章目录DOM1.获取一个元素操作元素属性操作元素文本内容操作元素样式(一次只能操作一个)操作元素类名(实现批量操作)DOM节点元素节点属性节点文本节点获取节点操作DOM节点创建一个节点节点属性获取元素尺寸获取元素偏移量获取可视窗口的尺寸懒加载案例***案例[懒加载](https://editor.csdn.net/md/?articleId=134384045)起名字例如:obox,前面的o表示object(对象),表示一个div的对象,这样命名的好处是:可以一眼看出这个变量的数据类型和大概用途DOM
2023-11-28 11:03:21
809
原创 滚动弹幕,欸欸欸
1.speed运动速度最好设置speed+=1,这样就可以使文字看起来匀速滑动弹幕的内容设置nowrap,如果不设置的话,当文字碰到屏幕边界,他就会不断折行,直到每一行只剩一个字。4.var sp=document.createElement(‘span’)要写在onclick内部,否则会出错(应该是点一次执行一次)3.弹幕的内容设置nowrap,如果不设置的话,当文字碰到屏幕边界,他就会不断折行,直到每一行只剩一个字。2.当弹幕距离屏幕左边为页面宽度的时候,清除span。
2023-11-27 22:07:06
412
1
原创 BOM..
/使用弹出框之后,js就会被阻塞,必须点掉他,才能执行后面的代码。/*如果要返回两个页面,就是从页面1跳到页面2,从页面2跳。//页面所有资源都加载完毕后执行(图片,视频,dom)//必须保证历史记录中已经有上一个页面,才能回退过去。/*只能存字符串,不能存对象,如果要存对象,可以加一。/*只能存字符串,不能存对象,如果要存对象,可以加一。//跟上面的forward是一个意思,就是+1页。//window获取的是显示的窗口的宽和高。//跟上面的back是一个意思,就是-1页。
2023-11-26 15:50:00
835
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人