Browse Source

2021 12 01

master
xuhuihui 3 years ago
parent
commit
5ab3c480c6
  1. 21
      04.系统编码/Frontend/package-lock.json
  2. 1
      04.系统编码/Frontend/package.json
  3. 35
      04.系统编码/Frontend/src/components/SystemManagement.vue
  4. 80
      04.系统编码/Frontend/src/uilts/axios.ts
  5. 17
      04.系统编码/Frontend/src/uilts/deepclone.ts

21
04.系统编码/Frontend/package-lock.json

@ -8,6 +8,7 @@
"name": "nanjing",
"version": "0.0.0",
"dependencies": {
"axios": "^0.24.0",
"element-plus": "^1.2.0-beta.4",
"moment": "^2.29.1",
"typescript": "^4.5.2",
@ -760,6 +761,14 @@
"node": ">= 4.0.0"
}
},
"node_modules/axios": {
"version": "0.24.0",
"resolved": "https://registry.npmjs.org/axios/-/axios-0.24.0.tgz",
"integrity": "sha512-Q6cWsys88HoPgAaFAVUb0WpPk0O8iTeisR9IMqy9G8AbO4NlpVknrnQS03zzF9PGAWgO3cgletO3VjV/P7VztA==",
"dependencies": {
"follow-redirects": "^1.14.4"
}
},
"node_modules/balanced-match": {
"version": "1.0.2",
"resolved": "https://registry.npm.taobao.org/balanced-match/download/balanced-match-1.0.2.tgz?cache=0&sync_timestamp=1617714298273&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbalanced-match%2Fdownload%2Fbalanced-match-1.0.2.tgz",
@ -1394,7 +1403,6 @@
"version": "1.14.5",
"resolved": "https://registry.npmmirror.com/follow-redirects/download/follow-redirects-1.14.5.tgz?cache=0&sync_timestamp=1635857764332&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Ffollow-redirects%2Fdownload%2Ffollow-redirects-1.14.5.tgz",
"integrity": "sha1-8JpYSJgdPHcrU5Iwl3hSP42Fw4E=",
"dev": true,
"funding": [
{
"type": "individual",
@ -4267,6 +4275,14 @@
"integrity": "sha1-YCzUtG6EStTv/JKoARo8RuAjjcI=",
"dev": true
},
"axios": {
"version": "0.24.0",
"resolved": "https://registry.npmjs.org/axios/-/axios-0.24.0.tgz",
"integrity": "sha512-Q6cWsys88HoPgAaFAVUb0WpPk0O8iTeisR9IMqy9G8AbO4NlpVknrnQS03zzF9PGAWgO3cgletO3VjV/P7VztA==",
"requires": {
"follow-redirects": "^1.14.4"
}
},
"balanced-match": {
"version": "1.0.2",
"resolved": "https://registry.npm.taobao.org/balanced-match/download/balanced-match-1.0.2.tgz?cache=0&sync_timestamp=1617714298273&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbalanced-match%2Fdownload%2Fbalanced-match-1.0.2.tgz",
@ -4749,8 +4765,7 @@
"follow-redirects": {
"version": "1.14.5",
"resolved": "https://registry.npmmirror.com/follow-redirects/download/follow-redirects-1.14.5.tgz?cache=0&sync_timestamp=1635857764332&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Ffollow-redirects%2Fdownload%2Ffollow-redirects-1.14.5.tgz",
"integrity": "sha1-8JpYSJgdPHcrU5Iwl3hSP42Fw4E=",
"dev": true
"integrity": "sha1-8JpYSJgdPHcrU5Iwl3hSP42Fw4E="
},
"fresh": {
"version": "0.5.2",

1
04.系统编码/Frontend/package.json

@ -6,6 +6,7 @@
"build": "vite build"
},
"dependencies": {
"axios": "^0.24.0",
"element-plus": "^1.2.0-beta.4",
"moment": "^2.29.1",
"typescript": "^4.5.2",

35
04.系统编码/Frontend/src/components/SystemManagement.vue

@ -87,8 +87,9 @@
<script lang="ts">
import {reactive, toRefs ,ref , onMounted} from 'vue';
import { deepClone } from "../uilts/deepclone";
export default {
export default {
name: 'SystemManagement',
setup() {
let option = reactive({
@ -206,31 +207,7 @@ import {reactive, toRefs ,ref , onMounted} from 'vue';
accountNumber:'11',
phone:'44',
emil:'xxxx'
}, {
date: '4',
name: 'Tom',
address: 'No. 189, Grove St, Los Angeles',
accountNumber:'11',
phone:'44',
emil:'xxxx'
}, {
date: '4',
name: 'Tom',
address: 'No. 189, Grove St, Los Angeles',
accountNumber:'11',
phone:'44',
emil:'xxxx'
},
{
date: '4',
name: 'Tom',
address: 'No. 189, Grove St, Los Angeles',
accountNumber:'11',
phone:'44',
emil:'xxxx'
},
]
}]
})
@ -245,7 +222,7 @@ import {reactive, toRefs ,ref , onMounted} from 'vue';
const onAmendClick = (index, rows)=>{
option.title = '修改信息'
option.dialogFormVisible = true
option.form =rows[index]
option.form = JSON.parse(JSON.stringify(rows[index]))
}
//
@ -285,9 +262,6 @@ import {reactive, toRefs ,ref , onMounted} from 'vue';
restaurants.value = loadAll()
})
return {
...toRefs(option),
onAddClick,
@ -303,6 +277,7 @@ import {reactive, toRefs ,ref , onMounted} from 'vue';
}
}
}
</script>
<style lang="less" scoped>

80
04.系统编码/Frontend/src/uilts/axios.ts

@ -0,0 +1,80 @@
import * as qs from "qs"
import axios from "axios"
import { format } from './string'
import { ElLoading, ElMessage, ElMessageBox } from 'element-plus'
import { MessageType } from "element-plus/lib/el-message/src/types";
let loading = null;
const service = axios.create({
baseURL: 'http://localhost:3000',
// baseURL: '',
// baseURL: 'http://192.168.30.84:8999',
timeout: 500000
})
let count = 0
service.interceptors.request.use(config => {
loading = ElLoading.service({
customClass: 'loading',
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0)'
})
return config;
}, error => {
Promise.reject(error)
})
service.interceptors.response.use(response => {
loading.close()
return response.data;
}, error => {
loading.close()
return Promise.reject(error)
}
)
export function post(url: any, params = {}, contentType = "application/x-www-form-urlencoded") {
return new Promise((resolve, reject) => {
if ('application/x-www-form-urlencoded' === contentType){
params = qs.stringify(params);
}
service({ url, method: 'post', data: params, headers: { 'Content-Type': contentType }}).then(response => {
resolve(response);
}).catch(error => {
reject(error);
})
})
}
export function get(regionId, file, params = {}, baseUrl = '') {
return new Promise((resolve, reject) => {
let url = getJsonFile(regionId, file);
service({ url, baseURL: baseUrl, method: 'get', params: params }).then(response => {
resolve(response);
}).catch(error => {
reject(error);
})
})
}
function getJsonFile(regionId, name) {
let pattern = 'json/{0}/{1}';
return format(pattern, regionId, name);
}
export function showMessageBox(message: string, title: string = "错误", type: MessageType = "error") {
ElMessage({
message: message,
center: true,
duration: 2000,
customClass: 'message-text',
})
}
export function showNoDataMessage() {
ElMessage({
message: '暂无数据',
center: true,
duration: 2000,
customClass: 'message-text',
})
}

17
04.系统编码/Frontend/src/uilts/deepclone.ts

@ -0,0 +1,17 @@
export function deepClone(obj) {
let objClone = Array.isArray(obj) ? [] : {};
if (obj && typeof obj === 'object') {
for (let k in obj) {
if (obj.hasOwnProperty(k)) {
//判断obj子元素是否为对象,如果是,递归复制
if (obj[k] && typeof obj[k] === 'object') {
objClone[k] = deepClone(obj[k]);
} else {
//如果不是简单复制
objClone[k] = obj[k];
}
}
}
}
return objClone
}
Loading…
Cancel
Save