- 博客(111)
- 收藏
- 关注
原创 vue 项目中.d.ts
一、.d.ts 文件的作用• 类型声明:.d.ts 是 TypeScript 的声明文件,只包含类型信息,不会生成 .js 代码,用于为 .vue 单文件组件、第三方 JS 库或项目内共享类型提供类型支持。常见收益包括:类型检查、IDE 智能提示、重构安全。• 让 TS 识别 .vue 模块:Vue 3 + TS 项目中,需要声明模块 “*.vue”,告诉 TypeScript .vue 文件默认导出的是一个 Vue 组件(通常使用 DefineComponent 类型)。
2026-01-06 23:18:18
869
原创 || ?. ?? ??= 4种操作符
JavaScript 中 ||、?.、?? 的含义与用法一、符号概览二、用法与示例|| 逻辑或场景:需要把任何 falsy 都替换成默认值的快捷写法。?. 可选链场景:处理 API 深层结构、可能缺失的属性/方法,避免 Cannot read property… 错误。?? 空值合并场景:需要区分“未设置(null/undefined)”与“显式假值(0、“”、false)”的默认值逻辑。三、如何选择四、组合与注意
2026-01-06 22:50:37
502
原创 js 解构赋值
箭头函数直接返回对象:const f = () => ({ name: ‘Tom’ });作为对象属性:const o = { data: ({ id: 1 }) };立即调用函数表达式:(function(){ /* …{在语句开头会被解析为代码块,加 () 将其转为合法的表达式上下文。将对象字面量作为表达式使用场景。
2026-01-06 22:37:28
636
原创 css中的padding margin 百分比
我们认为,正常流中的大多数元素都会足够高以包含其后代元素(包括外边距),如果一个元素的上下外边距是父元素的height的百分数,就可能导致一个无限循环,父元素的height会增加,以适应后代元素上下外边距的增加,而相应的,上下外边距因为父元素height的增加也会增加。padding margin 使用百分比按父元素宽度计算,而不是高度。
2026-01-06 22:09:58
110
原创 js 函数参数赋值问题
在 forEach 中,回调函数的参数 item 本质上是数组元素的值或引用的副本。引用类型元素:item 是引用的副本,重新赋值只会改变副本的指向,不会影响原数组中的引用。重新赋值:item 被赋予新引用,与原数组元素的引用断开,不影响原数组。修改属性:item 和原数组元素指向同一对象,修改属性会影响原数组。基本类型元素:item 是值的副本,重新赋值不影响原数组。
2025-06-22 22:39:11
386
原创 在 JavaScript 文件中使用 JSX
在 Vue 中,你可以直接在组件选项中定义 render 函数,而不需要使用 setup 函数。这种方式在 Vue 2 和 Vue 3 中都适用,是更传统的写法。通过以上配置和示例,你就可以在 Vue 项目的 JavaScript 文件中自由使用 JSX 语法了。在 Vue 组件中直接使用 render 函数(不使用 setup)v-bind 或 : 直接使用属性 name={value}标签 直接在 JS 中写 JSX。模板语法 Render 函数等效。模板语法 JSX 语法。
2025-06-22 16:02:07
1024
原创 useState、useRef、变量的区别
useState useRef 保存状态。useRef、变量 不会更新视图。useState 更新视图。
2024-06-25 10:27:42
219
原创 开发Vue组件库
1.新建package 文件夹,添加index.js 、custombutton 文件夹,custombutton 中 添加。使用脚手架新建vue项目(以button 组件为例)在package.json 添加。
2024-04-02 23:29:26
454
原创 nuxt ssr 部署
首先在服务器安装node(在node官网上下载linux binary 版本, 我使用的是 16.20.2版本, 解压, 软链接在全局path)
2024-04-02 22:10:00
675
原创 nginx 配置
location /api/ {proxy_pass http://backend;}and you visit http://abc.xyz/api/endpoint, you would be directed to http://backend/api/endpoint;if the config islocation /api/ {proxy_pass http://backend/;}and you visit http://abc.xyz/api/endpoint, you woul
2024-03-29 11:08:16
480
原创 xshell.xftp.nginx 部署前端项目
一.安装xshell xftp.新建会话输入用户名密码连接成功后安装nginx1.环境安装yum install gcc-c++yum install -y pcre pcre-develyum install -y zlib zlib-develyum install -y openssl openssl-devel2.安装包wget -c https://nginx.org/download/nginx-1.12.0.tar.gz3.解压tar -zxvf nginx-1.12
2021-10-25 19:11:22
1673
原创 content-Type 常用方式
1.application/json'Content-Type': 'application/json;charset=UTF-8'2.application/x-www-form-urlencodedkey 和 val 会进行了 URL 转码import qs from 'qs'export function login(data) { return request({ url: 'url', method: 'post', data: qs.stringify(
2021-10-24 21:30:03
264
原创 vscode 自动保存代码
vscode文件-首选项-设置setting.json 加“files.autoSave”: “afterDelay”
2021-10-24 11:26:15
591
原创 createObjectUrl && fileReader
fileReader let reader = new FileReader() reader.readAsDataURL(file.files[0]) reader.onload =()=>{ document.getElementById('img').src = reader.result }createObjectUrldocument.getElementById('img').src=window.URL.createObjectURL
2021-06-01 10:33:39
250
原创 webpack小结
1.npm install webpack webpack-cli -D2.新建webpack.config.js基础配置见官网3.在package.json 中增加命令scripts: {bulid: ‘webpack --config webpack.config.js’}4.main.js中引入js代码5.安装识别css 的loadernpm install style-loader css-loader -D...
2021-04-18 22:39:36
134
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅