超简单的react和typescript和引入scss项目搭建流程
1、首先我们先创建一个react项目,react官网也有react项目搭建的命令
npx create-react-app my-app
cd my-app
2、安装我们项目需要的样式依赖,这个项目我用的是scss
npm install node-sass -D
3、安装typescript的依赖命令
npm install typescript @types/node @types/react @types/react-dom @types/jest
4、安装sass-loader和node-sass依赖
npm install sass-loader node-sass --save-dev
5、打开react的webpack配置
在node_modules下找到这个文件node_modules/react-scripts/config/webpack.config.dev.js 找到module下的rules,然后找到最后一个配置,修改成如下的样子
原来的
{
loader: require.resolve('file-loader'),
// Exclude `js` files to keep "css" loader working as it injects
// its runtime that would otherwise be processed through "file" loader.
// Also exclude `html` and `json` extensions so they get processed
// by webpacks internal loaders.
exclude: [/\.(js|mjs|jsx|ts|tsx)$/, /\.html$/, /\.json$/],
options: {
name: 'static/media/[name].[hash:8].[ext]',
},
}
改之后的
{
exclude: [/\.js$/,/\.html$/,/\.json$/,/\.scss$/],
loader: require.resolve('file-loader'),
options: {
name: 'static/media/[name].[hash:8].[ext]',
},
},
{
test:/\.scss$/,
loaders:['style-loader','css-loader','sass-loader']
},
6、将src里面的文件改为这样,并将App.js改为App.tsx
index.js代码如下:
import React from 'react';
import ReactDOM from 'react-dom';
import App from './App'; ReactDOM.render(<App />, document.getElementById('root'));
7、在App.tsx里面写一些简单的ts代码就可以run了
import React, { Component } from 'react';
interface Props { }
interface State {
list: string,
}
class App extends Component<Props, State> {
constructor(props: Props) {
super(props)
this.state = {
list: 'hello world!!!'
}
}
render() {
return (
);
}
}
export default App;
7、App.scss代码如下
.content{
width: 500px;
height: 500px;
background-color: pink;
margin: 0 auto;
text-align: center;
line-height: 500px;
.bth{
color: blue;
}
}
7、运行项目执行命令: npm start //切记 改node_modules里面的文件 要重启一下项目
超简单的react和typescript和引入scss项目搭建流程的更多相关文章
- 【已解决】React中配置Sass引入.scss文件无效
React中配置Sass引入.scss文件无效 在react中使用sass时,引入.scss文件失效 尝试很多方法没法解决,最终找到解决方法,希望能帮助正在坑里挣扎的筒子~ 在node_modules ...
- React中配置Sass引入.scss文件无效
React中配置Sass引入.scss文件无效 在react中使用sass时,引入.scss文件失效尝试很多方法没法解决,最终找到解决方法,希望能帮助正在坑里挣扎的筒子~ 在node_modules文 ...
- 超简单!asp.net core前后端分离项目使用gitlab-ci持续集成到IIS
现在好多使用gitlab-ci的持续集成的教程,大部分都是发布到linux系统上的,但是目前还是有很大一部分企业使用的都是windows系统使用IIS在部署.NET应用程序.这里写一下如何使用gitl ...
- 转载 初学者必看——最简单最清晰的Struts2项目搭建流程
https://blog.csdn.net/key0323/article/details/50773499 在项目中想要使用Struts2框架,我该怎么做?从哪里开始?这是我的疑惑,我想也是很多初学 ...
- React学习(1)—— 基础项目搭建以及环境配置
首先,我们需要安装node.js,直接搜索并在官网下载安装包. node.js官网:https://nodejs.org/en/ 现在我们成功安装了node和npm,然后我们来用npm创建新的项目,首 ...
- 一个简单的Java Web项目搭建流程
今天试图在服务器上搭建一个web服务器,顺便回顾了java web项目的入门,使用Servlet处理HTTP请求,并记录日志等操作.当很久没有做过web项目时,有些东西还是很容易忘记的. Maven配 ...
- 从零配置webpack(react+less+typescript+mobx)
本文目标 从零搭建出一套支持react+less+typescript+mobx的webpack配置 最简化webpack配置 首页要初始化yarn和安装webpack的依赖 yarn init -y ...
- React与Typescript整合
0. Typescript Typescript对于前端来说可以说是越来越重要了,前端的很多项目都用Typescript进行了重构.这主要得益于Typescript有比较好的类型支持,在编码的过程中可 ...
- ssh框架整合---- spring 4.0 + struts 2.3.16 + maven ss整合超简单实例
一 . 需求 学了这么久的ssh,一直都是别人整合好的框架去写代码,自己实际动手时才发现框架配置真是很坑爹,一不小心就踏错,真是纸上得来终觉浅! 本文将记录整合struts + spring的过程 , ...
随机推荐
- Subarray Sum II
Description Given an positive integer array A and an interval. Return the number of subarrays whose ...
- 1、HDFS 架构、启动过程
Hadoop Distributed File System 易于拓展的分布式文件系统 运行在大量普通廉价机器上,提供容错机制 为大量用户提供性能不错的文件存取服务 NameNode Namenode ...
- gitbase 集成sqler 进行git 代码分析
gitbase 是一个方便的git sql 查询引擎,sqler 是一个很不错的sql 转rest api工具,以下是一个简单的集成测试 项目使用docker-compose 运行 环境准备 do ...
- javascript之随机密码[必包含大写,小写,数字]
js取两个数字之间的随机数: parseInt(Math.random()*(上限-下限+1)+下限) 如:取1-10之间的随机数 parseInt(Math.random()*(10-1+1)+ ...
- 微信小程序敏捷开发实战
wxml->wcc编译->javascript 用户javascript-> wawebview->view 小程序原理 微信 小程序-> webview appserv ...
- Doors Breaking and Repairing
题目链接:Doors Breaking and Repairing 题目大意:有n个门,先手攻击力为x(摧毁),后手恢复力为y(恢复),输入每个门的初始“生命值”,当把门的生命值攻为0时,就无法恢复了 ...
- 「ZJOI2019」开关
传送门 Description 有一些一开始全都是关的开关,每次随机选择一个(每个开关概率不同)开关并改变它的状态,问达到目标状态的期望步数 Solution \(P=\sum_{i=1}^{n}p ...
- mysql 遍历所有表并条件查询
use eepm_push; DROP PROCEDURE IF EXISTS FountTable; delimiter $$ create procedure FountTable() begin ...
- unity2019新建LWRP项目出错:Failed to resolve project template
原因不详,但是在C盘创建项目的确会出现这个问题,改到D盘或E盘就没这个问题了
- Phpoffice 已经弃用
Package phpoffice/phpexcel is abandoned, you should avoid using it. Use phpoffice/phpspreadsheet i ...