permission.tsx 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  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. setWXPubFollow(state, action) {
  25. state.wxPubFollow = true//action?true:false;
  26. // state.wxPubFollow = action.payload;
  27. },
  28. setPushAllow(state, action) {
  29. state.pushAllow = action.payload;
  30. },
  31. setStepAllow(state, action) {
  32. state.stepAllow = action.payload;
  33. },
  34. setAlbumAllow(state, action) {
  35. state.albumAllow = action.payload;
  36. },
  37. setCameraAllow(state, action) {
  38. state.cameraAllow = action.payload;
  39. },
  40. setPhotoAllow(state, action) {
  41. state.photoAllow = action.payload;
  42. },
  43. setAddToMini(state, action) {
  44. state.addToMini = action.payload;
  45. }
  46. }
  47. });
  48. export default permissionSlice.reducer;
  49. export const { setWXPubFollow, setPushAllow, setStepAllow, setCameraAllow, setAlbumAllow, setPhotoAllow,setAddToMini} = permissionSlice.actions;