博客
关于我
React-ts开发备忘——在tsx中使用js的模块引入方式
阅读量:348 次
发布时间:2019-03-04

本文共 626 字,大约阅读时间需要 2 分钟。

我们初次使用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  }}

 

 

转载地址:http://suuh.baihongyu.com/

你可能感兴趣的文章
Mysql执行计划字段解释
查看>>
mysql执行计划怎么看
查看>>
MySQL执行计划解读
查看>>
mysql执行顺序与索引算法
查看>>
mysql批量update优化_Mysql中,21个写SQL的好习惯,你值得拥有呀
查看>>
mysql批量update操作时出现锁表
查看>>
MYSQL批量UPDATE的两种方式
查看>>
mysql批量修改字段名(列名)
查看>>
MySQL批量插入数据遇到错误1213的解决方法
查看>>
mysql技能梳理
查看>>
MySQL报Got an error reading communication packets错
查看>>
Mysql报错Can‘t create/write to file ‘/tmp/#sql_3a8_0.MYD‘ (Errcode: 28 - No space left on device)
查看>>
MySql报错Deadlock found when trying to get lock; try restarting transaction 的问题解决
查看>>
MySQL报错ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘
查看>>
Mysql报错Packet for query is too large问题解决
查看>>
mysql报错级别_更改MySQL日志错误级别记录非法登陆(Access denied)
查看>>
Mysql报错:too many connections
查看>>
MySQL报错:无法启动MySQL服务
查看>>
mysql授权用户,创建用户名密码,授权单个数据库,授权多个数据库
查看>>
mysql排序查询
查看>>