当前位置: 首页 > wzjs >正文

长沙网站制作案例国外免费发产品的b2b平台

长沙网站制作案例,国外免费发产品的b2b平台,在线制作表情包免费,纸箱手工制作大全文章目录 1. 原生 JavaScript 中(TypeScript)示例常见类型对应表 2. 在 React 中(使用 React.RefObject 和事件中访问)A. 使用 useRef 获取元素类型B. 在事件处理函数中C. 其他事件类型示例 3. 在 Vue 中(Vue 3 TypeS…

文章目录

  • 1. 原生 JavaScript 中(TypeScript)
    • 示例
    • 常见类型对应表
  • 2. 在 React 中(使用 React.RefObject 和事件中访问)
    • A. 使用 useRef 获取元素类型
    • B. 在事件处理函数中
    • C. 其他事件类型示例
  • 3. 在 Vue 中(Vue 3 + TypeScript)
    • A. 使用模板 ref 和 onMounted
    • B. 在事件中使用
  • 小结对比

在 TypeScript 中,为 DOM 元素定义类型是一个常见需求,不同场景(原生 JavaScript、React、Vue)下写法略有不同,下面为你详细列出:

1. 原生 JavaScript 中(TypeScript)

在 TypeScript 中操作原生 DOM 元素,常用类型来自 lib.dom.d.ts 中定义的类型,例如 HTMLInputElement, HTMLDivElement, HTMLElement 等。

示例

const input = document.querySelector('input') as HTMLInputElement;
input.value = 'Hello';

或更安全写法(避免 null):

const input = document.querySelector('input');
if (input instanceof HTMLInputElement) {input.value = 'Hello';
}

常见类型对应表

元素类型
<input>HTMLInputElement
<textarea>HTMLTextAreaElement
<select>HTMLSelectElement
<div>HTMLDivElement
<button>HTMLButtonElement
所有元素HTMLElement

2. 在 React 中(使用 React.RefObject 和事件中访问)

A. 使用 useRef 获取元素类型

import React, { useRef, useEffect } from 'react';const MyComponent: React.FC = () => {const inputRef = useRef<HTMLInputElement>(null);useEffect(() => {if (inputRef.current) {inputRef.current.focus();}}, []);return <input ref={inputRef} />;
};

B. 在事件处理函数中

const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {console.log(e.target.value);
};

C. 其他事件类型示例

事件类型类型名
onChange on inputReact.ChangeEvent<HTMLInputElement>
onClickReact.MouseEvent<HTMLElement>
onSubmit on formReact.FormEvent<HTMLFormElement>
onKeyDown on textareaReact.KeyboardEvent<HTMLTextAreaElement>

3. 在 Vue 中(Vue 3 + TypeScript)

A. 使用模板 ref 和 onMounted

<template><input ref="inputEl" />
</template><script lang="ts" setup>
import { ref, onMounted } from 'vue';const inputEl = ref<HTMLInputElement | null>(null);onMounted(() => {if (inputEl.value) {inputEl.value.focus();}
});
</script>

B. 在事件中使用

<template><input @input="handleInput" />
</template><script lang="ts" setup>
const handleInput = (e: Event) => {const target = e.target as HTMLInputElement;console.log(target.value);
};
</script>

小结对比

框架 / 场景写法方式类型示例
原生 JS + TSas HTMLInputElement / instanceofHTMLDivElement, HTMLInputElement
ReactuseRef<HTMLInputElement>()React.ChangeEvent<HTMLInputElement>
Vue`ref<HTMLInputElementnull>()`
http://www.dtcms.com/wzjs/143575.html

相关文章:

  • 网站搭建技术电商大数据查询平台免费
  • 网站建设方案标准模板河北seo平台
  • 美国设计网站seo关键词排名软件
  • 哈尔滨模板网站建站广州商务网站建设
  • 建设安全施工网络平台东莞seo网站制作报价
  • 昆明网站建设 昆明光硕网络营销公司怎么注册
  • 鄂州政府网站投稿网站
  • 沈阳设计网站seo还有用吗
  • 网站规划与设计课程设计网站的推广方法有哪些
  • wordpress js验证码插件关键词优化策略
  • lisp 网站开发外链交易平台
  • 网站开发注册流程以及收费网络营销的步骤
  • 手机做网站的软件比百度好用的搜索软件
  • 如何彻底清除网站的网页木马现在做推广的新渠道有哪些
  • 新疆生产建设兵团八师网站关键词优化是怎样收费的
  • 中国建设特种作业操作证网官方网站小程序制作流程
  • 创作网站百度指数关键词
  • 网站建设实验报告总结seo网站优化推广费用
  • 前台和后台网站开发有什么区别怎样找推广平台
  • h5商城网站怎么做全网搜索软件
  • 福建省建设工程职业注册网站想开广告公司怎么起步
  • 外贸网站优化公司广州seo服务
  • 江苏网站建站系统哪家好专业seo优化公司
  • 摄影网站有哪些?seo为什么要进行外部优化
  • 钢材网站建设如何做好推广引流
  • 卡通网站建设站长工具官网域名查询
  • 创建网站平台淘宝关键词排名是怎么做的
  • 小程序开发费用一览表含价格广东网站seo营销
  • 怎么做付款链接网站爱站工具包的模块有哪些
  • 重庆专业做网站收录网站