React + Typescript,使用react-boilerplate-cra-template创建react项目

React + Typescript!使用react-boilerplate-cra-template创建react项目

Create react app use react-boilerplate-cra-template.

1. 使用 cra-template-rb 模板,配合 create-react-app 命令

npx create-react-app --template cra-template-rb your-app-name

如果有已经存在的git项目,可以先将空的git项目clone到本地,然后将上面命令最后指定的your-app-name更换为本地仓库的目录。例如:

npx create-react-app --template cra-template-rb git-repo

2. 默认有一些示例页面,使用 npm run cleanAndSetup 可以清理。

在这里插入图片描述

3. 配置项目启动的端口

项目通过命令 npm startyarn start 来启动,启动端口默认为 3000。可以通过修改项目根目录下的 .env.local 来设置启动的端口。

# .env.local
BROWSER=none
EXTEND_ESLINT=true
PORT=3030

4. 配置代理(Proxy)

为了便于代理的更改,将代理提取为json文件。然后使用 setupProxy.js 配置。

安装依赖 yarn add chalk http-proxy-middlewarenpm i chalk http-proxy-middleware 可加 -D ,不加也行,create-react-app会处理的。

文件位置: /src/setupProxy.js (脚手架暂不支持proxy为ts文件)

/**
 * Configure Http Proxy
 */
const fs = require('fs');
const path = require('path');
const chalk = require('chalk');
const {
    createProxyMiddleware } = require('http-proxy-middleware');

const divider = chalk.gray('\n-----------------------------------');

// logger
const logger = {
   
  error: err => {
   
    console.error(chalk.red(err));
  },
  proxyReversed: (target, apis) => {
   
    console.log(
      `
        Proxy to ${
     chalk.bold(target)} ${
     chalk.green('✓'
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
React-barrage是一个React组件库,提供了在页面上展示弹幕的功能。在使用react-barrage之前,你需要先在项目中安装它: ``` npm install react-barrage --save ``` 然后在你的组件中使用它: ```tsx import React, { useCallback, useEffect, useState } from 'react'; import { Barrage, BarrageItem } from 'react-barrage'; interface Message { text: string; time: number; } const BarrageComponent: React.FC = () => { const [messages, setMessages] = useState<Message[]>([]); useEffect(() => { // 模拟异步获取弹幕数据 const timer = setInterval(() => { const now = Date.now(); setMessages(prevMessages => [ ...prevMessages, { text: `弹幕${now}`, time: now } ]); }, 1000); return () => clearInterval(timer); }, []); const renderItem = useCallback(({ text }) => { return <div>{text}</div>; }, []); return ( <Barrage> {messages.map(message => ( <BarrageItem key={message.time} text={message.text} render={renderItem} /> ))} </Barrage> ); }; export default BarrageComponent; ``` 这里的Barrage组件是弹幕的容器,而BarrageItem则是每一条弹幕。你需要将需要展示的弹幕数据传递给BarrageItem,并通过render函数来渲染每一条弹幕的内容。在上面的例子中,我们使用了useState来存储弹幕数据,并使用useEffect模拟异步获取数据的过程。当组件挂载后,我们每隔一秒钟就会向弹幕数据中添加一条新的弹幕数据,并将其展示在页面上。 需要注意的是,由于react-barrage是基于canvas实现的,因此在使用时需要注意一些性能问题。如果弹幕太多或太长,可能会导致页面卡顿或者崩溃。因此,在使用时需要根据实际情况来控制弹幕的数量和长度。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值