diff --git a/package-lock.json b/package-lock.json
index e9cc24c..20eee38 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,5 +1,5 @@
{
- "name": "douyin3",
+ "name": "douyin",
"version": "0.1.0",
"lockfileVersion": 1,
"requires": true,
@@ -8054,6 +8054,12 @@
"minimist": "^1.2.5"
}
},
+ "mobile-select": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/mobile-select/-/mobile-select-1.1.2.tgz",
+ "integrity": "sha1-Hcuei0G7RlJXm8XUyOumFwO7RX8=",
+ "dev": true
+ },
"move-concurrently": {
"version": "1.0.1",
"resolved": "https://registry.npm.taobao.org/move-concurrently/download/move-concurrently-1.0.1.tgz",
diff --git a/package.json b/package.json
index 7959acd..d15df62 100644
--- a/package.json
+++ b/package.json
@@ -25,6 +25,7 @@
"babel-eslint": "^10.1.0",
"eslint": "^6.7.2",
"eslint-plugin-vue": "^7.0.0",
+ "mobile-select": "^1.1.2",
"node-sass": "^4.9.3",
"sass-loader": "^7.1.0"
},
diff --git a/src/App.vue b/src/App.vue
index e0db509..47afd76 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -29,6 +29,7 @@ export default {
'/choose-school',
'/choose-department',
'/declare-school',
+ '/display-type',
];
const toDepth = routeDeep.indexOf(to.path)
const fromDepth = routeDeep.indexOf(from.path)
diff --git a/src/components/BaseHeader.vue b/src/components/BaseHeader.vue
index 651c487..2ccae36 100644
--- a/src/components/BaseHeader.vue
+++ b/src/components/BaseHeader.vue
@@ -28,7 +28,11 @@ export default {
computed: {},
methods: {
back() {
- window.history.back()
+ if (this.$attrs.onBack) {
+ this.$attrs.onBack()
+ } else {
+ this.$back()
+ }
}
}
}
@@ -41,6 +45,7 @@ export default {
width: 100%;
position: fixed;
background: $main-bg;
+
.header {
display: flex;
justify-content: center;
diff --git a/src/components/ConfirmDialog.vue b/src/components/ConfirmDialog.vue
new file mode 100644
index 0000000..6173e1a
--- /dev/null
+++ b/src/components/ConfirmDialog.vue
@@ -0,0 +1,72 @@
+
+
+
+
+
+
diff --git a/src/components/Loading.vue b/src/components/Loading.vue
new file mode 100644
index 0000000..4fa6551
--- /dev/null
+++ b/src/components/Loading.vue
@@ -0,0 +1,60 @@
+
+
+
+
+
+
diff --git a/src/components/SelectDialog.vue b/src/components/SelectDialog.vue
index 36bef56..078731c 100644
--- a/src/components/SelectDialog.vue
+++ b/src/components/SelectDialog.vue
@@ -27,8 +27,6 @@ export default {
\ No newline at end of file
diff --git a/src/pages/me/userinfo/DisplayType.vue b/src/pages/me/userinfo/DisplayType.vue
new file mode 100644
index 0000000..76139fe
--- /dev/null
+++ b/src/pages/me/userinfo/DisplayType.vue
@@ -0,0 +1,93 @@
+
+
+
+
+ 展示范围
+
+
+
+
+
公开可见
+
+

+
+
+
+
校友可见
+
+

+
+
+
+
仅自己可见
+
+

+
+
+
+
+
+
+
+
diff --git a/src/router/index.js b/src/router/index.js
index 07e6cf2..a2b8022 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -16,6 +16,7 @@ import AddSchool from "../pages/me/userinfo/AddSchool";
import ChooseSchool from "../pages/me/userinfo/ChooseSchool";
import DeclareSchool from "../pages/me/userinfo/DeclareSchool";
import ChooseDepartment from "../pages/me/userinfo/ChooseDepartment";
+import DisplayType from "../pages/me/userinfo/DisplayType";
const routes = [
// {path: '', component: Music},
@@ -36,6 +37,7 @@ const routes = [
{path: '/choose-school', component: ChooseSchool},
{path: '/declare-school', component: DeclareSchool},
{path: '/choose-department', component: ChooseDepartment},
+ {path: '/display-type', component: DisplayType},
]
export default VueRouter.createRouter({
diff --git a/src/utils/enums.js b/src/utils/enums.js
index 4887808..c92d650 100644
--- a/src/utils/enums.js
+++ b/src/utils/enums.js
@@ -1,7 +1,7 @@
export default {
DISPLAY_TYPE: {
- ALL: 1,
- SCHOOL: 2,
- ME: 3,
+ ALL: 0,
+ SCHOOL: 1,
+ ME: 2,
}
}
\ No newline at end of file
diff --git a/src/utils/global-methods.js b/src/utils/global-methods.js
index dc326b6..0fda2c4 100644
--- a/src/utils/global-methods.js
+++ b/src/utils/global-methods.js
@@ -1,7 +1,24 @@
import * as Vue from "vue";
import SelectDialog from "../components/SelectDialog";
+import ConfirmDialog from "../components/ConfirmDialog";
+import Loading from "../components/Loading";
export default {
+ $showLoading() {
+ const app = Vue.createApp({
+ render() {
+ return
+ },
+ })
+ let parent = document.createElement('div')
+ parent.classList.add(...['dialog-ctn'])
+ document.body.append(parent)
+ app.mount(parent)
+ },
+ $hideLoading() {
+ let parent = document.querySelector('.dialog-ctn')
+ parent.remove()
+ },
$showSelectDialog(sexList, cb) {
let remove = () => {
let parent = document.querySelector('.dialog-ctn')
@@ -24,6 +41,32 @@ export default {
document.body.append(parent)
app.mount(parent)
},
+ $showConfirmDialog(title, okCb, cancelCb) {
+ let remove = () => {
+ let parent = document.querySelector('.dialog-ctn')
+ parent.classList.replace('fade-in', 'fade-out')
+ setTimeout(() => {
+ parent.remove()
+ }, 300)
+ }
+ let tempOkCb = e => {
+ remove()
+ okCb(e)
+ }
+ let tempCancelCb = e => {
+ remove()
+ cancelCb(e)
+ }
+ const app = Vue.createApp({
+ render() {
+ return
+ },
+ })
+ let parent = document.createElement('div')
+ parent.classList.add(...['dialog-ctn', 'fade-in'])
+ document.body.append(parent)
+ app.mount(parent)
+ },
$notice(val) {
let div = document.createElement('div')
div.classList.add('global-notice')
@@ -97,5 +140,10 @@ export default {
str += s
}
return str
+ },
+ $sleep(duration) {
+ return new Promise((resolve, reject) => {
+ setTimeout(resolve, duration)
+ })
}
}
\ No newline at end of file