commit
f5b105973d
@ -0,0 +1,15 @@
|
|||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
使用 demo
|
||||||
|
|
||||||
|
|
||||||
|
authKey: 代表key的权限
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
```jsx harmony
|
||||||
|
<AuthorityControl authKey="home.button">
|
||||||
|
<Button type="primary">按钮 控制</Button>
|
||||||
|
</AuthorityControl>
|
||||||
|
```
|
||||||
@ -0,0 +1,7 @@
|
|||||||
|
import * as React from 'react';
|
||||||
|
|
||||||
|
export interface AuthorityControlProps {
|
||||||
|
authKey: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
export default class LoginItem extends React.Component<AuthorityControlProps, any> {}
|
||||||
@ -0,0 +1,19 @@
|
|||||||
|
import React, { PureComponent } from 'react';
|
||||||
|
import GlobalAuthority from '../../layouts/GlobalAuthority';
|
||||||
|
|
||||||
|
// 用于控制权限
|
||||||
|
class AuthorityControl extends PureComponent {
|
||||||
|
render() {
|
||||||
|
const { authKey, children } = this.props;
|
||||||
|
return (
|
||||||
|
<GlobalAuthority.Consumer>
|
||||||
|
{context => {
|
||||||
|
const { authList } = context;
|
||||||
|
return <div>{authList[authKey] ? children : '无权限'}</div>;
|
||||||
|
}}
|
||||||
|
</GlobalAuthority.Consumer>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export default AuthorityControl;
|
||||||
@ -0,0 +1,28 @@
|
|||||||
|
import React, { Component } from 'react';
|
||||||
|
import { Button } from 'antd';
|
||||||
|
import AuthorityControl from '../../components/AuthorityControl';
|
||||||
|
import GlobalAuthority from '../../layouts/GlobalAuthorityContext';
|
||||||
|
|
||||||
|
export default class Home extends Component {
|
||||||
|
state = {};
|
||||||
|
|
||||||
|
render() {
|
||||||
|
// 定义认证的属性 TODO
|
||||||
|
const GlobalAuthorityProps = {
|
||||||
|
user: 'admin',
|
||||||
|
login: 'success',
|
||||||
|
authList: {
|
||||||
|
'auth.button': true,
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
|
return (
|
||||||
|
<GlobalAuthority.Provider value={GlobalAuthorityProps}>
|
||||||
|
<AuthorityControl authKey="home.button">
|
||||||
|
<Button type="primary">按钮 控制</Button>
|
||||||
|
</AuthorityControl>
|
||||||
|
<h1>home...</h1>
|
||||||
|
</GlobalAuthority.Provider>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Reference in new issue