permission.tsx 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. import { createSlice } from "@reduxjs/toolkit";
  2. interface PermissionState {
  3. wxPubFollow?: boolean | false; //weapp
  4. pushAllow?: boolean | false; //rn
  5. stepAllow?: boolean | false;
  6. albumAllow?: boolean | false; //rn
  7. cameraAllow?: boolean | false; //rn
  8. photoAllow?: boolean | false; //weapp
  9. addToMini?: boolean | false; //weapp 是否已经添加到我的小程序
  10. }
  11. const initialState: PermissionState = {
  12. wxPubFollow: false,
  13. pushAllow: false,
  14. stepAllow: false,
  15. albumAllow: false,
  16. cameraAllow: false,
  17. photoAllow: false,
  18. addToMini: false,
  19. }
  20. const permissionSlice = createSlice({
  21. name: 'permission',
  22. initialState,
  23. reducers: {
  24. setWXFollow(state, action) {
  25. state.wxPubFollow = action.payload;
  26. },
  27. setPushAllow(state, action) {
  28. state.pushAllow = action.payload;
  29. },
  30. setStepAllow(state, action) {
  31. state.stepAllow = action.payload;
  32. },
  33. setAlbumAllow(state, action) {
  34. state.albumAllow = action.payload;
  35. },
  36. setCameraAllow(state, action) {
  37. state.cameraAllow = action.payload;
  38. },
  39. setPhotoAllow(state, action) {
  40. state.photoAllow = action.payload;
  41. },
  42. setAddToMini(state, action) {
  43. state.addToMini = action.payload;
  44. }
  45. }
  46. });
  47. export default permissionSlice.reducer;
  48. export const { setWXFollow, setPushAllow, setStepAllow, setCameraAllow, setAlbumAllow, setPhotoAllow,setAddToMini} = permissionSlice.actions;