React-ts开发备忘——在tsx中使用js的模块引入方式

2023-11-08

我们初次使用tsx开发react项目时,肯定会对他的模块引入方式觉得很奇怪吧

在tsx里面,我们需要这样引入React:

import * as React from 'react'

而 在js 中我们可以这样引入:

import React,{Component, useState} from 'react'

 

从上面可以看出,其实使用tsx的方式引入不是很方便,因为React使我们每个React组件都必须要引入的,因为jsx语法需要依赖React,而当我们要实现类式组件或者使用hook时,我们需要用到Component和useState等,如果使用tsx的方法,我们需要这样写:

import * as React from "react";

class Demo extends React.Component{
    // ....
}

function Demo1(){
    const [name,setName] = React.useState("kiner");
    // ....
}

这样是比较繁琐的,那么,有没有什么办法可以让我们在tsx中使用js的模块引入方式来引入模块呢 ?

答案是肯定的,我们只需要再tscofing.json的“compilerOptions”配置下面加入如下选项即可

{
  "compilerOptions": {
    "allowSyntheticDefaultImports": true
  }
}

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

React-ts开发备忘——在tsx中使用js的模块引入方式 的相关文章

  • 虚拟列表的实现思路(附带react代码)

    虚拟列表实现思路 代码链接 div class 滚动容器 div class 撑起列表正常高度 div div class 列表容器 div class 列表项 div div div 1 列表项 的高度确定 2 利用 滚动容器 的高度计算
  • state和props的区别__react

    首先说明 state和props是每个组件都有的 其次 state可变 但props不可变 这是官网给出的说法 但实操过程中 state的确可变 但props也可以变 是不是fb搞错了 当然不是 这里的可变与不可变 说的是改变后 是否会重新
  • React的State Hook用法详解

    一 State Hook是啥 State Hook 就是指 useState 这个特殊函数 让你不用编写class 就可以使用state特性 换言之就是让 函数组件 拥有 state 特性 对数据进行动态更新 二 class中的state
  • 在校学生如何白嫖黑群辉虚拟机和内网穿透,实现海量资源的公网访问?(小白专用)

    文章目录 前言 本教程解决的问题是 按照本教程方法操作后 达到的效果是 前排提醒 1 搭建群辉虚拟机 1 1 下载黑群辉文件 vmvare虚拟机安装包 1 2 安装VMware虚拟机 1 3 解压黑 群辉虚拟机文件 1 4 虚拟机初始化 1
  • styled-components 的用法

    用于给标签或组件添加样式 给标签或组件添加样式 import styled from styled components styled button 给button标签添加样式 const Button styled button back
  • 配置使用Eslint的时候 版本错误 "eslint": "5.6.0" a different version of eslint was detected higher up in the tr

    1 如果你也遇到下面的问题 你可以 按照命令行提示的那样 下面这四步完成的一般就可以了 但是不排除你在运行的时候忘记下载某些依赖 1 删除 package lock json 不是package json 你可以选择 yarn lock 或
  • chrome浏览器安装redux-devtools调试工具

    chrome浏览器安装redux devtools调试工具 1 点击进入https www chromefor com 2 在搜索框搜索redux 3 找到最新版本 Redux DevTools v2 17 0 进行下载 4 选择下载线路
  • 【Ant Design】Form.Item创建自定义表单

    一 概述 Antd是一个非常强大的UI组件库 里面的Form表单组件也基本能满足我们大多数场景 但是也有需要自定义表单的场景 Vue2里我们使用v model 结合子组件的model属性 来实现自定义组件的双向绑定 Vue3里我们使用v m
  • 三、react中类组件和函数组件

    简介 本篇我们只要介绍react中类组件与函数组件两种组件的写法 两者的优缺点 同时对在我们的项目开发中该使用类组件还是函数组件进行思考分析 废话不多说进入正题 类组件 设计思路 类组件时面向对象编程的思想 在其中我们去设计类组件时使用st
  • 关于Vue.js和React.js,听听国外的开发者怎么说?

    VueJS 与 ReactJS 到底怎么样如何 听听别人怎么说 使用所有新的库和框架 很难跟上所有这些库和框架 也就是说 这就需要您决定哪些是值得花时间的 让我们看看人们说什么 和Vue JS一起工作是很愉快的 我发现学习曲线很浅 然而 这
  • React中使用if else 条件判断

    在react中用jsx渲染dom的时候经常会遇到if条件判断 然而在jsx中竟是不允许if条件判断的 以下有几种判断方式 可以根据自己的应用场景 挑选适合的 方案一 class HelloMessage extends React Comp
  • React解密:React Hooks函数之useCallback和useMemo

    之所以将useCallback和useMemo放到一起 从某种意义上说 他们都是性能优化的始作俑者 他们也有很多的共性 我们先来回顾一下class组件性能优化的点 调用 setState 就会触发组件的重新渲染 无论前后 state 是否相
  • React之state、hooks性能分析

    目录 一 state 1 为什么使用setState 2 setState异步更新 3 如何获取异步的结果 4 setState一定是异步吗 5 源码分析 6 数据的合并 7 多个state的合并 二 为什么需要Hook 三 Class组件
  • React核心概念:状态提升

    上一节 表单 下一节 组合vs继承 React核心概念 状态提升 引言 添加第二个输入框 编写转换函数 状态提升 经验总结 引言 很多情况下我们使用的多个组件需要对同一个数据做出对应的反应 在这里我们推荐把这个共享的状态提升到距离这些组件最
  • React官方文档--Lifting State Up

    Lifting State Up 如果 几个组件需要同时影响并且修改同一个数据 我们建议将这个共享状态进行提升 给他们最近的共同祖先 在这个部分 我们将要创建一个温度计算器来判断水会不会在给定温度下沸腾 我们将从一个叫做BoilingVer
  • umi 后台管理demo

    umi 后台管理demo umi react ts dva antd egg 有待优化 简单的前后端管理demo 接口提供增删查改 前端也有相应功能 github代码 https github com huiBuiling ql admin
  • 【React】 4课 react初识组件

    首先我们如1课创建一个文件夹在文件夹中安装react环境需要的配置文件 npm init y npm i babel standalone D npm i react react dom D 安装配置文件教程链接 https blog cs
  • React事件处理及事件流

    React事件处理 React事件处理是通过将事件处理器绑定到组建上处理事件 事件触发的同时更新组建的内部状态 内部状态更新会触发组件的重绘 React 元素的事件处理和 DOM 元素的事件处理很相似 但语法上的略有区别 在React中事件
  • reactJS 干货(reactjs 史上最详细的解析干货)

    一 State和 Props state是状态机 应该包括 那些可能被组件的事件处理器改变并触发用户界面更新的数据 譬如需要对用户输入 服务器请求或者时间变化等作出响应 不应该包括 计算所得数据 React组件 在render 里使用pro
  • React中渲染html结构---dangerouslySetInnerHTML

    dangerouslySetInnerHTML 胡子 语法绑定的内容全部作为普通文本渲染 渲染html结构基于 dangerouslySetInnerHTML dangerouslySetInnerHTML 是 React 标签的一个属性

随机推荐

  • python 简便写法汇总

    python 1 如果要用到数组的值和下标 1 1找出数组中大于0的值的下标 return x 1 for x in range len nums if nums x gt 0 return i 1 for i num in enumera
  • 第一章:计算机基础知识——知识点整理

    第一章 计算机基础知识 知识点整理 第一章 计算机基础知识 知识梳理 高频考点 1 1 信息与信息技术 1 1 1 信息与数据 1 1 2 信息社会 1 1 3 信息技术 1 1 4 计算机文化 的内涵 1 2 计算机技术概论 1 2 1
  • 对JDBC的认识

    JDBC Java DataBase Connectivity 是Java和数据库的桥梁 是一个规范而不是一个实现 能够执行SQL语句 它由一组用Java语言编写的类和接口组成 JDBC API 由一个驱动程序管理器实现对连接到不同数据库的
  • 录播系统的服务器,录播系统服务器ip地址

    录播系统服务器ip地址 内容精选 换一换 当您在使用VPC的路由表功能时 需要在弹性云服务器上部署SNAT 使得VPC内其他没有绑定EIP的弹性云服务器可以通过它访问Internet 该配置对VPC内所有子网生效 已拥有需要部署SNAT的弹
  • linux下 查看vsftp是否启动状态

    linux 查看vsftp是否启动状态 1 使用ps命令 ps ef grep ftp 如果显示ftp的进程号 表示ftp为启动状态 2 使用service命令 service vsftpd status 显示信息为is running 表
  • 【HCIP-生成树】

    文章目录 1 生成树引入 2 802 1D 标准生成树 3 802 1W RSTP 快速生成树 4 802 1S MST 多生成树 1 生成树引入 为了保证交换网络高可用性 在交换机之间使用冗余链路 由于网络中的泛洪机制可能造成二层的桥接环
  • XShell直接拖拽文件

    在看视频的时候 看到讲师直接拖拽文件到服务器上 觉得好牛逼 之前自己都是另外开一个Xhttp 但是自己试了一下不可以 原因是缺少一个包 lrzsz 懒人找事做 输入命令 apt install lrzsz 我的服务器是Unbuntu系统 不
  • IDEA-Arraylist数组的基本使用

    package demo04 import java util ArrayList 数组的长度不可以发生改变 但是ArrayList集合的长度是可以随意变化的 对于ArrayList来说 有一个尖括号
  • selenium 自动化测试工具(五)UnitTest介绍

    encoding utf 8 import unittest 被测试类 class myclass object classmethod def sum cls a b return a b 将两个传入参数进行相加操作 classmetho
  • HICA(OSI部分总结)

    OSI参考模型 开放式参考互联模型 OSI是由ISO 国际标准化组细 在1979定颁布的 定义了数据产生过程的标准格式 丌同的系统丌同的软件在产生数据时定义了统一的标准 将数据的产生过程分为了7局 提出了分局的思想 分局 丌同局实现丌同的功
  • 从头到尾说一次 Spring 事务管理(器)

    事务管理 一个被说烂的也被看烂的话题 还是八股文中的基础股之一 本文会从设计角度 一步步的剖析 Spring 事务管理的设计思路 都会设计事务管理器了 还能玩不转 为什么需要事务管理 先看看如果没有事务管理器的话 如果想让多个操作 方法 类
  • URL(统一资源定位符)

    2023年8月28日 周一上午 目录 概述 URL的组成 举例说明 示例 CSDN官网 我的博客 极简Vim教程 在百度搜索CSDN 相关资料 概述 URL 统一资源定位符 是用于标识和定位互联网上的资源的字符串 它是一种标准化的格式 由多
  • Pytest框架:测试用例setup和teardown(续)

    背景 上次我们聊了为什么要使用setup和teardown以及其应用场景 接着聊了如何单独使用模块级 setup module teardown module 函数级 setup function teardown function 类级
  • python的闭包和装饰器

    1 什么是闭包 内外函数嵌套 内部函数引用外部函数作用域下的非全局变量 外函数返回内函数对象 优点 为变量续命 缺点 浪费内存 创建一个闭包必须满足以下几点 1 必须有一个内嵌函数 2 内嵌函数必须引用外部函数中的变量 3 外部函数的返回值
  • 多线程爬虫快速上手

    多线程爬虫 在实现网页爬虫的时候 经常会因为代理问题掉线导致爬虫失败 还又很多时候下载的文件略大 比如下载图片 因为下载图片是一个耗时的操作 如果采用之前那种同步的方式下载 那效率肯会特别慢 这时候我们就可以考虑使用多线程的方式来下载图片
  • 2022年,我用两万字详细总结HashMap(JDK1.8)底层原理

    欢迎来到HashMap的学习之旅 先检测下你对HashMap jdk1 8原理掌握情况 1 知晓jdk1 8中 HashMap底层是由数组 链表 红黑树组成 2 能说清楚什么是hash计算 hash计算实现的原理 3 了解hash冲突 知道
  • 使用两个栈实现一个队列

    问题分析 先观察栈和队列的特点 栈是先进后出的 而队列是先进先出的 也就是说想用栈实现队列 pop元素时一个栈的栈底元素是要pop的队首元素 问题解决 于是 可以用两个栈来实现一个队列 当push元素时 如果已经有元素在队列中 将元素pus
  • UML类图基本画法

    概要 这里简单介绍UML常见的六种画法 包括类 接口 依赖关系 关联关系 聚合关系 合成关系 贴一个综合图 类 简要画法 类有三个单元格的矩形 看上图中的动物类 第一格 类名称 如果是抽象类 名称标注为斜体字 第二格 类属性名称 第三格 类
  • 课程设计书五子棋AI算法及其实现

    五子棋AI 能根据棋盘局势判断棋子应落在何处获胜 主要算法有权值法和博弈树法两种实现方案 权值法 在数理统计中 有一种名为蒙特卡洛法的方法常被使用 其主要内容为 根据事件出现的概率估计某些特征 并将其作为问题的解 权值法实现五子棋AI利用的
  • React-ts开发备忘——在tsx中使用js的模块引入方式

    我们初次使用tsx开发react项目时 肯定会对他的模块引入方式觉得很奇怪吧 在tsx里面 我们需要这样引入React import as React from react 而 在js 中我们可以这样引入 import React Comp