javascript - 如何将函数存储到存储变量中?
问题描述
在一个组件中,我希望我的来自商店的变量等于一个函数才能使用它。
我这样创建我的函数:
makeStyles(theme => ({
root: {
flexGrow: 1
},
title: {
flexGrow: 1
}
}));
它是来自 material-ui 的函数。
我在我的商店里得到了这样的价值:
this.state = {
classes: makeStyles()
};
所以我希望我可以像这样使用它:this.state.classes.root
但我不工作(它编译但不工作)
那是我的代码:
import React, { Component } from "react";
import { makeStyles } from "@material-ui/styles";
import AppBar from "@material-ui/core/AppBar";
import Toolbar from "@material-ui/core/Toolbar";
import Button from "@material-ui/core/Button";
import IconButton from "@material-ui/core/IconButton";
import MenuIcon from "@material-ui/icons/Menu";
import { connect } from "react-redux";
import { withRouter } from "react-router-dom";
import Typography from "@material-ui/core/Typography";
makeStyles(theme => ({
root: {
flexGrow: 1
},
title: {
flexGrow: 1
}
}));
class Navbar extends Component {
constructor() {
super();
this.state = {
classes: makeStyles()
};
}
render() {
return (
<div className={this.state.classes.root}>
<AppBar position="static">
<Toolbar className="red">
// for example, here i would like to use it like: this.state.classes.root
<div className="blue">
<IconButton edge="start" color="inherit" aria-label="Menu">
<MenuIcon />
</IconButton>
</div>
<div className="green">
<Button color="inherit">Login</Button>
</div>
</Toolbar>
</AppBar>
</div>
);
}
}
const mapStateToProps = state => {
return {
access_token: state.access_token
};
};
export default withRouter(connect(mapStateToProps)(Navbar));
代替
<Toolbar className="red">
我想拥有:
<Toolbar className={this.state.classes.root}>
我该怎么做呢?
解决方案
要使用 JavaScript 值,您必须这样做:
<Toolbar className={this.state.classes.root}>
推荐阅读
- query-string - Kentico:未找到长查询字符串加载页面
- reactjs - 如何从调色板材质ui中获取颜色
- python - Discord.py 从客户端切换到机器人
- node.js - 将反应表单中的数据传递给 expressJS 并重定向到 PayuMoney 网站以进行付款
- python - 使用 Word2Vec 的文本相似度
- c++ - 我已经创建了在 C++ 中修改 Linkedlist 中的节点的函数,但它不起作用:
- javascript - Get json from flask using an external js file
- vba - 根据 SQL 查询数据将文件移动到新目录
- gekko - GEKKO 异常:@error:最大方程长度(大于 100k 的变量数)
- python - 熊猫:为什么我不能在新的计算字段中使用以前创建的列?