美文网首页
react 记账

react 记账

作者: RickyWu585 | 来源:发表于2021-11-22 10:51 被阅读0次
  1. css normalize是让所有浏览器默认样式基本一样,css reset是让默认样式重置
  2. react安装dart-sass
  • 使用该命令进行偷梁换柱,让react以为安装的是node-sass,实际上安装的是dart-sass
yarn add node-sass@npm:dart-sass
  1. webstorm配合react让css使用src根路径:标记src为根目录
    image.png
  2. react让js使用src为根路径:配置jsconfig.json
"baseUrl": "src",
"include": [
    "src"
  ]
  1. react css 方案:styled-components
yarn add  styled-components
yarn add --dev @types/styled-components // 配合typesricpt
  1. react router 方案:react-router-dom
yarn add react-router-dom.
yarn add --dev  @types/react-router-dom
  1. react 使用 svg
  • 把react的webpack配置文件弄出来
yarn eject
  • (webpack相关的一般用 -- dev)
yarn add --dev svg-sprite-loader
  • webpack.config.js里添加
{
    test: /\.svg$/,
    use: [
       { loader: 'svg-sprite-loader', options: {} },
       // 'svg-transform-loader',
        'svgo-loader'
     ]
}
  • 安装所需 loader
  • require 所有 svg
const importAll = (requireContext: __WebpackModuleApi.RequireContext)=>{
  requireContext.keys().forEach(requireContext)
}
try {
  importAll(require.context('icons',true,/\.svg$/))
}catch (err){
  console.log(err);
}
  • 同时需要yarn add --dev @types/webpack-env解决ts报错
  • svg去除颜色:源文件里的 fill 删掉
  • webpack配置删除svg的所有fill:(新版的配置要加name)
{
  loader: 'svgo-loader', options: {
    plugins: [{name: "removeAttrs",params:{attrs: "fill"}}]
  }
}
  1. 如果声明或import了一个变量却不使用,react的treeshaking就会把改代码删掉。这时候需要使用require。因为treeshaking不适用于require
  2. 路由高亮:NavLink标签,activeClassName属性
<NavLink to="/money" activeClassName="selected">
            <Icon name="money"/>
            记账
</NavLink>
  1. styled components 配合组件
    使用的组件里要在需要的地方使用className={props.className}
const MyLayout = styled(Layout)`
  display: flex;
  flex-direction: column;
`
const Layout = (props: any) => {
  return (
    <Wrapper>
      <Main className={props.className}>
        {props.children}
      </Main>
      <Nav/>
    </Wrapper>
  );
};
  • ts可以用typeof获取一个值的类型
  • Partial表示子集
const onChange = (obj:Partial<typeof selected>)=>{
    setSelected({
      ...selected,
      ...obj
    })
  }
  • ts <>相当于参数
  • 想让一个元素居中,可以给其加一个box,然后给这个box设置flex属性(属于黑科技了)
  • 路由精准匹配:
<Route path="/tags/:tag" exact={true}>
            <TagEdit/>
</Route>
  • <input {...rest}/>
  • 函数可以延迟执行代码
  • 元素类型继承: &
type Props = {
  name?: string
} & React.SVGAttributes<SVGAElement>
  • react 合并 className 的库:
yarn add classnames
yarn add --dev @types/classnames
  • ts 的 Omit(...)

相关文章

  • react 记账

    css normalize是让所有浏览器默认样式基本一样,css reset是让默认样式重置 react安装dar...

  • react记账本

    React 项目搭建 - 起步 运行 yarn config set registry https://regis...

  • 用JS打造一款记帐APP——开篇序

    多年前用php写过web版记账,近期用React框架写了记账APP并开源到了github上。这个系列文章用来记录记...

  • React 基础实践篇-小型财务系统(10 个视频)

    react 基础实践篇-小型财务系统(10 个视频) 学完 React 基础篇,就可以轻松实践,一个小小的记账系统...

  • React+Django问题

    一、前言 在使用React+Django前后端分离写了个记账平台,Mysql使用了8.0版本,坑踩的头疼,主要有以...

  • 优雅记账的姿势

    记账的方法有很多,但是记账的工具无非就是三种而已:电子记账、纸质记账及电子和纸质混合记账。电子记账的话,很多APP...

  • 记账产品之Timi记账

    产品定位 Timi时光记账是主打时光记账的记账软件,以时间轴记账、快拍记账为特色,强调支出控制,力求简洁可心的记账...

  • 3分钟学会坚持记账的窍门!

    记账前 1.明确记账的目的 不要为了记账而记账。记账远不止记下一堆数字和文字。记账应当帮助你总结规律、看出增长或下...

  • 2019-07-29

    记账本隐私政策 记账本 以此声明对 记账本 用户隐私保护的许诺。 记账本 的隐私声明正在不断改进中,随着 记账本 ...

  • 记账app

    spendee 跟iPhone自带钱包可以关联 陪你记账-好玩哈哈 timi记账 非常简洁 口袋记账 理财式记账 ...

网友评论

      本文标题:react 记账

      本文链接:https://www.haomeiwen.com/subject/vqoptrtx.html