From 4cc04809f6634b8549b336894ccd82812c046fe2 Mon Sep 17 00:00:00 2001 From: Jimmy Liow Date: Sun, 4 Feb 2024 15:43:37 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E5=88=A0=E9=99=A4=20Mobx=20=E9=85=8D?= =?UTF-8?q?=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 2 -- src/main.jsx | 15 ++------------- 2 files changed, 2 insertions(+), 15 deletions(-) diff --git a/package.json b/package.json index 979d0b9..22863bb 100644 --- a/package.json +++ b/package.json @@ -14,8 +14,6 @@ "antd": "^5.12.8", "crypto-js": "^4.2.0", "dayjs": "^1.11.10", - "mobx": "^6.12.0", - "mobx-react": "^9.1.0", "react": "^18.2.0", "react-chat-elements": "^12.0.11", "react-dom": "^18.2.0", diff --git a/src/main.jsx b/src/main.jsx index 0167a37..75ef375 100644 --- a/src/main.jsx +++ b/src/main.jsx @@ -1,6 +1,5 @@ -import React from 'react'; -import ReactDOM from 'react-dom/client'; -import { configure } from 'mobx'; +import React from 'react' +import ReactDOM from 'react-dom/client' import { createBrowserRouter, RouterProvider } from 'react-router-dom'; import { AuthContext } from '@/stores/AuthContext' import { ThemeContext } from '@/stores/ThemeContext' @@ -13,19 +12,9 @@ import SalesManagement from '@/views/SalesManagement' import DingdingQRCode from '@/views/DingdingQRCode' import AccountProfile from '@/views/AccountProfile' import ErrorPage from '@/components/ErrorPage' - import Conversations from '@/views/Conversations/ChatWindow' import '@/assets/index.css' -configure({ - useProxies: 'ifavailable', - enforceActions: 'observed', - computedRequiresReaction: true, - observableRequiresReaction: false, - reactionRequiresObservable: true, - disableErrorBoundaries: process.env.NODE_ENV == 'production', -}); - const router = createBrowserRouter([ { path: '/', From c8924ee7642e96e59b4711d36a200cd85672ad11 Mon Sep 17 00:00:00 2001 From: Jimmy Liow Date: Sun, 4 Feb 2024 15:44:45 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E5=88=A0=E9=99=A4=20Mobx=20=E7=9B=B8?= =?UTF-8?q?=E5=85=B3=E4=BD=BF=E7=94=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/stores/Order.js | 115 ------------------------------------- src/stores/Root.js | 60 ------------------- src/stores/StoreContext.js | 7 --- 3 files changed, 182 deletions(-) delete mode 100644 src/stores/Order.js delete mode 100644 src/stores/Root.js delete mode 100644 src/stores/StoreContext.js diff --git a/src/stores/Order.js b/src/stores/Order.js deleted file mode 100644 index fbeb0da..0000000 --- a/src/stores/Order.js +++ /dev/null @@ -1,115 +0,0 @@ -import { makeAutoObservable, runInAction } from 'mobx' -import { fetchJSON, postForm } from '@/utils/request' -import { prepareUrl, isNotEmpty, isEmpty } from '@/utils/commons' - -class Order { - - constructor(root) { - makeAutoObservable(this, { rootStore: false }) - this.root = root - } - - fetchOptionList() { - const fetchCountryUrl = 'https://p9axztuwd7x8a7.mycht.cn/service-InfoSys/InfoSys/GetCountryList' - const fetchPhotographerUrl = 'https://p9axztuwd7x8a7.mycht.cn/service-InfoSys/InfoSys/GetphotographerList' - const fetchTagUrl = 'https://p9axztuwd7x8a7.mycht.cn/service-InfoSys/InfoSys/GetPhotoTagList' - - const countryPromise = fetchJSON(fetchCountryUrl) - .then(json => { - if (json.errcode == 0) { - const countryOptionList = (json?.result ?? []).map((data, index) => { - return { - value: data.COI_SN, - label: data.COI_Name - } - }) - countryOptionList.unshift({value:-1, label: '未知'}) - return countryOptionList - } else { - throw new Error(json.errmsg + ': ' + json.errcode) - } - }) - - const cityPromise = this.fetchCityList('') - - const photographerPromise = fetchJSON(fetchPhotographerUrl) - .then(json => { - if (json.errcode == 0) { - const photographerOptionList = (json?.result ?? []).map((data, index) => { - return { - value: data.U_Name, - label: data.U_Name - } - }) - return photographerOptionList - } else { - throw new Error(json.errmsg + ': ' + json.errcode) - } - }) - - const tagPromise = fetchJSON(fetchTagUrl) - .then(json => { - if (json.errcode == 0) { - const tagOptionList = (json?.result ?? []).map((data, index) => { - return { - value: data.Tag_SN, - label: data.Tag_Name - } - }) - return tagOptionList - } else { - throw new Error(json.errmsg + ': ' + json.errcode) - } - }) - - return Promise.all([countryPromise, cityPromise, photographerPromise, tagPromise]) - .then(results => { - return { - countryOptionList: results[0], - cityOptionList: results[1], - photographerOptionList: results[2], - tagOptionList: results[3] - } - }) - } - - - fetchCityList(countryId) { - const fetchCityUrl = - prepareUrl('https://p9axztuwd7x8a7.mycht.cn/service-InfoSys/InfoSys/GetCityList') - .append('coi_sn', countryId) - .build() - return fetchJSON(fetchCityUrl) - .then(json => { - if (json.errcode == 0) { - const cityOptionList = (json?.result ?? []).map((data, index) => { - return { - value: data.CII_SN, - label: data.CII_Name - } - }) - cityOptionList.unshift({value:-1, label: '未知'}) - return cityOptionList - } else { - throw new Error(json.errmsg + ': ' + json.errcode) - } - }) - } - - useImage(imageId, userId, website) { - const formData = new FormData() - formData.append('PII_SN', imageId) - const postUrl = 'https://p9axztuwd7x8a7.mycht.cn/service-InfoSysSOA/use_image' - - return postForm(postUrl, formData) - .then(json => { - if (json.errcode == 0) { - console.info(json) - } else { - throw new Error(json.errmsg + ': ' + json.errcode) - } - }) - } -} - -export default Order diff --git a/src/stores/Root.js b/src/stores/Root.js deleted file mode 100644 index 76ff0a4..0000000 --- a/src/stores/Root.js +++ /dev/null @@ -1,60 +0,0 @@ -import { makeAutoObservable } from 'mobx' -import Auth from './Auth' -import Order from './Order' - -class Root { - constructor() { - this.orderStore = new Order(this) - this.authStore = new Auth(this) - makeAutoObservable(this) - } - - clearSession() { - if (window.sessionStorage) { - const sessionStorage = window.sessionStorage - sessionStorage.clear() - } else { - console.error('browser not support sessionStorage!') - } - } - - getSession(key) { - if (window.sessionStorage) { - const sessionStorage = window.sessionStorage - return sessionStorage.getItem(key) - } else { - console.error('browser not support sessionStorage!') - return null - } - } - - putSession(key, value) { - if (window.sessionStorage) { - const sessionStorage = window.sessionStorage - return sessionStorage.setItem(key, value) - } else { - console.error('browser not support sessionStorage!') - } - } - - getLocal(key) { - if (window.localStorage) { - const localStorage = window.localStorage - return localStorage.getItem(key) - } else { - console.error('browser not support localStorage!') - return null - } - } - - putLocal(key, value) { - if (window.localStorage) { - const localStorage = window.localStorage - return localStorage.setItem(key, value) - } else { - console.error('browser not support localStorage!') - } - } -} - -export default Root diff --git a/src/stores/StoreContext.js b/src/stores/StoreContext.js deleted file mode 100644 index 7b15bfd..0000000 --- a/src/stores/StoreContext.js +++ /dev/null @@ -1,7 +0,0 @@ -import { createContext, useContext } from 'react' - -export const StoreContext = createContext() - -export function useStore() { - return useContext(StoreContext) -} \ No newline at end of file