Web开发小知识点(二)

1.关于取余

我在Dart语言里(flutter项目)

int checkNum = (10 - 29) % 10; 那么checkNum等于1

但是在Vue项目里

const checkNum = (10 - 29) % 10;却等于-9

语言的特性不同,导致结果也不同,如果要想和Dart保持一致,则可以先对sum取余在用10减去后再取余数。

const checkNum = (10 - (sum % 10)) % 10;

2.关于position: sticky;的使用

经常在一个滑动的视图里需要固定某些组件,遇到过好几次用了这个属性没有达到预期的效果,因为可能滑动的视图不是整个屏幕,而是某一个组件,这时候要注意position: sticky;这个属性的组件的层级,不要放在外面,就放在和滚动的视图同一个层级,因为他们的父组件是一样的,sticky才好确定高度。 不然就会发生和视图一起滚动等很傻的UI展示出来。

3.关于文件的上传

一般的post接口请求时,直接一个json对象就传过去了。

export function toAuthReview(data) {return request({url: auth_review,method: 'post',data: data})
}....请求的地方
var payload = { 'certType': 'BANK', 'cuNum': getCustNum() };toAuthReview(payload).then(response => {}

 但是在上传图片的时候,就得用formData去上传图片,如果用到formdata,就得单独对接口进行配置headers。

export function feedbackRecord(data) {return request({url: feedback_record,method: 'post',data: data,headers: {'Content-Type': 'application/x-www-form-urlencoded'}})
}...请求的地方formData.append('cuNum', 111)formData.append('mobileNum', 2222)formData.append('assistanceDesc', 111)formData.append('assistanceType', 11)formData.append('assistancePage', '')formData.append('assistanceChoice', curSelectFeedReson)formData.append('imgs', list[0]) //图片formData.append('imgs', list[1])//图片feedbackRecord(formData).then(response => {});
4.textarea自动聚焦

平常点击textarea就可以聚焦了,但是有时候可能希望点击某个组件的时候,或者当他从可见变成不可见的时候,自动聚焦

1.设置属性: 自动聚焦

<textarea id="myTextarea" autofocus></textarea>

 2.当执行某个事件的时候:

function aaa{const textarea = document.getElementById('myTextarea');textarea.focus();}

3.关于他的其他一些属性

<textarea

class="bank_number_input"

v-model="bankNum" 与ref数据相互绑定

maxlength="23" 最大长度

rows="1" 最大行数

@input="filterInput"//对输入进行处理

autofocus //聚焦

@keydown="handleKeyDown"//对按键事件进行处理

></textarea>

function filterInput(event) {const inputValue = event.target.value;//获取当前输入框的值const separator = ' '; const positions = [3, 6, 10, 14, 17]; //指定位置插入空格let filteredValue = inputValue.replace(/\D/g, ''); //只许输入数字for (let i = 0; i < positions.length; i++) {//插入空格const position = positions[i];if (position <= filteredValue.length) {filteredValue = filteredValue.slice(0, position + i) + separator + filteredValue.slice(position + i);}}event.target.value = filteredValue; //对输入框进行赋值}

因为往输入框插入了空格,所以无法正常删除,于是


function handleKeyDown(event) {if (event.key === 'Backspace') {const textarea = event.target;const caretPosition = textarea.selectionStart;const inputValue = textarea.value;if (inputValue[caretPosition - 1] === ' ') {event.preventDefault(); // 阻止默认的删除行为textarea.value = inputValue.slice(0, caretPosition - 1) + inputValue.slice(caretPosition);textarea.selectionStart = caretPosition - 1; // 更新光标位置textarea.selectionEnd = caretPosition - 1;}}
}
5.关于三方组件的自定义属性

今天在使用element的el-dialog组件的时候,发现很多属性设置不了,满足不了业务的需求。

后面问了同事,才知道可以用以下方法去解决

1.网页的查看源码

 这样就可以看到他里面实际的css样式格式。

2.接下来就是重写他的样式,如果直接写是无法生效的,

需要:deep()才行,例如

3.查看是否生效

刷新后,检查UI,再查看样式是否生效了。

 6.关于固定顶部,然后下面的高度也固定但是可以滑动,并且滑动不会滑动整个父组件

第一步:父组件

.all_con {width: 100%;height: calc(100vh - 3.5rem);display: flex;overflow: hidden;flex-direction: column;
}

确定高度,并且不让滑动

第二步:顶部的组件

.top_sticky_con {width: 100%;display: flex;flex: 0;flex-direction: column;opacity: 1;}

设置flex:0;

第三步:

.list_con {width: 100%;display: flex;flex-direction: column;flex: 1;overflow-y: auto;
}

设置他的flex为1,占据剩余高度,并且可以滑动。

实际效果

7.textarea和input的palceHolder样式设置无效

 input::-webkit-input-placeholder{}/*webkit 内核浏览器*/input::-moz-placeholder{}/*Mozilla Firefox 19+*/input:-moz-placeholder{}/*Mozilla Firefox 4 to 18*/input:-ms-input-placeholder{}/* 设置textarea框提示内容的样式 */textarea::-webkit-input-placeholder{text-align: left;line-height: 20px;}/*webkit 内核浏览器*/textarea::-moz-placeholder{text-align: left;line-height: 20px;}/*Mozilla Firefox 19+*/textarea:-moz-placeholder{text-align: left;line-height: 20px;}/*Mozilla Firefox 4 to 18*/textarea:-ms-input-placeholder{text-align: left;line-height: 20px;}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/10747.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于SpringBoot的竹宣非遗宣传网站

摘要 随着互联网的普及和数字化时代的到来&#xff0c;竹编等非物质文化遗产的保护与传承面临新的机遇和挑战。该研究旨在使用SpringBoot后端框架与Vue前端框架&#xff0c;构建一个竹编非遗宣传网站&#xff0c;通过丰富的展示形式和交互体验&#xff0c;提升公众对竹编这一非…

内网工具之ADFind的使用

ADFind是一款C语言编写的域中信息查询工具&#xff0c;可以在域中任何一台主机上使用&#xff0c;在内网渗透中的使用率较高 下载地址&#xff0c;该地址下载工具不需要压缩包密码 https://github.com/mai-lang-chai/AD-Penetration-Testing-Tools/blob/master/AdFind.zip参数…

什么是 IIS

什么是 IIS 一、什么是 IIS二、IIS 的功能三、IIS 几点说明四、IIS 的版本五、IIS 常见的组合 欢迎关注【云边小网安】 一、什么是 IIS IIS&#xff1a;指 Internet Information Services &#xff0c;是一种由微软公司开发的 Web 服务器应用程序。IIS&#xff1a;是一种 Web …

【busybox记录】【shell指令】ls

目录 内容来源&#xff1a; 【GUN】【ls】指令介绍 【busybox】【ls】指令介绍 【linux】【ls】指令介绍 使用示例-默认输出&#xff1a; 列出目录内容 - 默认输出 列出目录内容 - 不忽略以.开头的文件 列出目录内容 - 不忽略以.开头的文件&#xff0c;只忽略.和..文件…

猜猜歇后语

页面 在输入框中填写你猜的答案&#xff0c;点击“显示答案”按钮&#xff0c;显示正确答案。 页面代码 function showAnswer(element){var elem$(element);elem.next().show();} //# // 初始化DataGrid对象 $(#dataGrid).dataGrid({searchForm: $(#searchForm),columnModel:…

Webstorm免费安装教程

一、介绍 WebStorm 具有智能化的代码编辑功能&#xff0c;如代码补全、重构、代码导航、错误检测等等&#xff0c;这些功能可以帮助开发人员提高编码效率&#xff0c;减少出错的可能性。同时&#xff0c;WebStorm 也集成了各种流行的前端框架和库&#xff0c;如 React、Angula…

每日OJ题_贪心算法四④_力扣397. 整数替换

目录 力扣397. 整数替换 解析代码 力扣397. 整数替换 397. 整数替换 难度 中等 给定一个正整数 n &#xff0c;你可以做如下操作&#xff1a; 如果 n 是偶数&#xff0c;则用 n / 2替换 n 。如果 n 是奇数&#xff0c;则可以用 n 1或n - 1替换 n 。 返回 n 变为 1 所需…

1057: 有向图的出度计算

解法&#xff1a; #include<iostream> using namespace std; int arr[100][100]; int main() {int vertex, edge;cin >> vertex >> edge;int i, j;while (edge--) {cin >> i >> j;arr[i][j] 1;}for (int i 0; i < vertex; i) {int sum 0;…

【Java难点】多线程-高级

悲观锁和乐观锁 悲观锁 synchronized关键字和Lock的实现类都是悲观锁。 它很悲观&#xff0c;认为自己在使用数据的时候一定有别的线程来修改数据&#xff0c;因此在获取数据的时候会一不做二不休的先加锁&#xff0c;确保数据不会被别的线程修改。 适合写操作多的场景&…

TypeScript学习日志-第二十四天(webpack构建ts+vue3)

webpack构建tsvue3 一、构建项目目录 如图&#xff1a; shim.d.ts 这个文件用于让ts识别.vue后缀的 后续会说 并且给 tsconfig.json 增加配置项 "include": ["src/**/*"] 二、基础构建 安装依赖 安装如下依赖&#xff1a; npm install webpack -D …

ACC-UNet: A Completely Convolutional UNet Model for the 2020s

文章目录 ACC-UNet: A Completely Convolutional UNet Model for the 2020s摘要方法实验结果 ACC-UNet: A Completely Convolutional UNet Model for the 2020s 摘要 这十年以来&#xff0c;计算机视觉领域引入了 Vision Transformer&#xff0c;标志着广泛的计算机视觉发生了…

基于SpringBoot+Vue社区老人健康信息管理系统

摘 要 如今社会上各行各业&#xff0c;都喜欢用自己行业的专属软件工作&#xff0c;互联网发展到这个时候&#xff0c;人们已经发现离不开了互联网。新技术的产生&#xff0c;往往能解决一些老技术的弊端问题。因为传统社区老人健康信息管理系统信息管理难度大&#xff0c;容错…

JETBRAINS IDES 分享一个2099通用试用码!IDEA 2024 版 ,支持一键升级

文章目录 废话不多说上教程&#xff1a;&#xff08;动画教程 图文教程&#xff09;一、动画教程激活 与 升级&#xff08;至最新版本&#xff09; 二、图文教程 &#xff08;推荐&#xff09;Stage 1.下载安装 toolbox-app&#xff08;全家桶管理工具&#xff09;Stage 2 : 下…

vs2019 STL库里 判断函数类型的模板 is_function_v 与 is_const_v

&#xff08;1&#xff09;源代码如下&#xff1a; 经简单代码测试后&#xff0c;得出 vs2019 的 c 编译器 和 其 STL 库的观点与设计&#xff1a;is_const_v 用来判断类型 T 内是否含有 const 修饰符&#xff0c;含有 const 则返回真。但若 T 是含有 const 的引用类型&#xf…

链表与顺序表的比较

目录 1.链表与顺序表的区别 1.1 存储空间 1.2 插入删除 1.3 扩容 1.4 使用场景 1.5 缓存使用率 1.链表与顺序表的区别 1.1 存储空间 顺序表在物理上与逻辑上都是连续的 链表在逻辑上连续物理不一定连续 因此顺序表我们可以任意访问而链表不可以随机访问 链表每次访问都…

什么是XXE漏洞,日常如何做好web安全,避免漏洞威胁

随着网络技术的不断发展&#xff0c;网站安全问题日益受到人们的关注。当前随着技术发展&#xff0c;网站存在一些常见的可能被攻击者利用的漏洞&#xff0c;而在众多网站安全漏洞中&#xff0c;XXE&#xff08;XML External Entity&#xff09;漏洞是一个不容忽视的问题。今天…

Sass深度解析:性能优化的秘密

首先&#xff0c;这篇文章是基于笔尖AI写作进行文章创作的&#xff0c;喜欢的宝子&#xff0c;也可以去体验下&#xff0c;解放双手&#xff0c;上班直接摸鱼~ 按照惯例&#xff0c;先介绍下这款笔尖AI写作&#xff0c;宝子也可以直接下滑跳过看正文~ 笔尖Ai写作&#xff1a;…

Mysql数据库的基础学习

为什么使用数据库&#xff1f; 1.持久化&#xff1a;将数据保存到可掉电式存储设备中以供使用。 数据库相关概念&#xff1a; DB:数据库&#xff08;Databass&#xff09;即存储数据的仓库&#xff0c;本质是一个文件系统&#xff0c;保存了一系列有组织的数据DBMS:数据库管…

netstat命令详解

netstat网络连接分析工具 工具说明&#xff1a; netstat 是一款命令行工具&#xff0c;主要是用于列出系统上所有的网络套接字连接情况&#xff0c;包括 tcp, udp 以及 unix 套接字&#xff0c;另外它还能列出处于监听状态&#xff08;即等待接入请求&#xff09;的套接字。除…

基于SpringBoot+Vue的法律咨询系统

课题背景 二十一世纪互联网的出现&#xff0c;改变了几千年以来人们的生活&#xff0c;不仅仅是生活物资的丰富&#xff0c;还有精神层次的丰富。在互联网诞生之前&#xff0c;地域位置往往是人们思想上不可跨域的鸿沟&#xff0c;信息的传播速度极慢&#xff0c;信息处理的速…