getUser是一个异步函数吗?是否需要更长的时间解决?是否总是返回我的正确的价值someotherclass。
class IdpServer {
constructor() {
this._settings = {
// some identity server settings.
};
this.userManager = new UserManager(this._settings);
this.getUser();
}
async getUser() {
this.user = await this.userManager.getUser();
}
isLoggedIn() {
return this.user != null && !this.user.expired;
}
}
let idpServer = new IdpServer();
export default idpServer;
// another class
// import IdpServer from '...'
class SomeOtherClass {
constructor() {
console.log(IdpServer.isLoggedIn());
}
}
Run Code Online (Sandbox Code Playgroud) 我正在使用 Material UI 并尝试将普通的 css 类转换为 js 文件。
.nav {
list-style-type: none;
margin: 0;
padding: 0;
overflow: hidden;
}
.navItem {
float: left;
flex: 1;
}
.navLink {
color: white;
text-decoration: none;
display: block;
font-size: '1 rem';
font-weight: 500;
line-height: 1.6;
letter-spacing: '0.0075em';
opacity: 1;
text-transform: 'none';
min-width: 0;
padding: 10px;
margin-left: 10px;
margin-right: 10px;
}
.navLink-static {
color: white;
text-decoration: none;
display: block;
font-size: '1rem';
font-weight: 500;
line-height: 1.6;
letter-spacing: '0.0075em';
opacity: 1;
text-transform: 'none';
padding: 10px;
margin-left: 10px; …Run Code Online (Sandbox Code Playgroud) 我的应用程序中有多个实体.每个实体都独立于其他实体.所以我为每个实体创建了一个单独的reducer,并在创建store时组合它们.
每个条目都有一些常见的操作,如
1)设置项目清单2)添加单项3)更新单项4)删除单项
所以在每个reducer中我都有相同类型的代码重复
设置清单
return {
...state,
list: {
...state.list,
...action.list
}
};
Run Code Online (Sandbox Code Playgroud)
添加单个项目
return {
...state,
list: {
...state.items,
[action.item.id]: {
...state.list[action.item.id],
...action.item
}
}
};
Run Code Online (Sandbox Code Playgroud)
..更新操作和删除操作的相似代码
有没有我可以抽象出这个代码,并为每个实体保留一个单独的reducer?
asynchronous ×1
css ×1
ecmascript-6 ×1
javascript ×1
jss ×1
material-ui ×1
react-redux ×1
reactjs ×1
redux ×1