Потому что vue-antd-admin привнёс некоторые вещи, которые мне не очень нравятся. Поэтому я переработал эту версию с использованием TS+VUE+ANTD.
router
, а все боковые меню настроены в файле children
. Они также были сгруппированы;
Пример использования:{
group:'opreations',
groupIcon:"info-circle",
title:"Операция",
children:[
{
path: '/from',
name: 'From',
meta: {
auth: true,
title: 'Форма операции',
icon: 'form',
},
component: () => import('@/views/pages/From.vue')
}
]
}
В папке tools
есть файл config.ts
, который содержит синтаксический сахар. Здесь можно настроить, является ли проект dev
или product
, и добавить соответствующие параметры, такие как URL для локальной отладки, URL для онлайн-версии и т. д.
В папке tools
находится файл message.ts
, содержащий некоторые часто используемые сетевые состояния. Вы можете использовать их для создания более удобного взаимодействия с пользователем в вашем проекте.
Название | Зависимость | Функция |
---|---|---|
g2 | yarn add / npm i / cnpm i @antv/g2 | Диаграмма |
data-set | yarn add / npm i / cnpm i @antv/data-set | Диаграмма |
velocity-animate | yarn add / npm i / cnpm i @types/velocity-animate | Анимация |
lodash | yarn add / npm i / cnpm i @types/lodash | Библиотека инструментов |
animejs | yarn add / npm i / cnpm i @types/animejs | Анимация |
jsonp | yarn add / npm i / cnpm i @types/jsonp | AJAX |
nprogress | yarn add / npm i / cnpm i nprogress | Индикатор выполнения |
xlsx | yarn add / npm i / cnpm i xlsx | Execl |
ol | yarn add / npm i / cnpm i ol | Openlayer |
axios | yarn add / npm i / cnpm i axios | AJAX |
export default class Tools {
// Определяем, является ли это браузером
public inBrowser = typeof window !== 'undefined';
// Получаем браузер UA
public UA = this.inBrowser && window.navigator.userAgent.toLowerCase();
// Является ли текущий браузер IE
public isIE = this.UA && /msie|trident/.test(this.UA);
// Текущий браузер - IE9
public isIE9 = this.UA && this.UA.indexOf('msie 9.0') > 0;
// Текущий браузер — Edge
public isEdge = this.UA && this.UA.indexOf('edge/') > 0;
//Текущий браузер — Android
public isAndroid = (this.UA && 'android' in this.UA);
// Текущий браузер — iOS
public isIOS = (this.UA && /iphone|ipad|ipod|ios/.test(this.UA));
// Текущий браузер — Chrome
public isChrome = this.UA && /chrome\/\d+/.test(this.UA) && !this.isEdge;
// Среда — PhantomJS
public isPhantomJS = this.UA && /phantomjs/.test(this.UA);
// Текущий браузер — Firefox
public isFF = this.UA && this.UA.match(/firefox\/(\d+)/);
// Объект имеет __proto__
public hasProto = '__proto__' in {};
// Определить, является ли переменная неопределённой
public isUndef(v: any) {
return v === undefined || v === null
}
//Определить, определена ли переменная
public isDef(v: any) {
return v !== undefined && v !== null
}
// Определить, истинна ли переменная
public isTrue(v: any) {
return v === true
}
// Определить, ложна ли переменная
public isFalse(v: any) {
return v === false
}
// Определить, является ли объект переменной
public isObject(obj: any) {
return obj !== null && typeof obj === 'object'
}
// Определить, является ли переменная регулярным выражением
public isRegExp(v: any) {
return Object.prototype.toString.call(v) === '[object RegExp]'
}
// Определить, является ли переменная обещанием
public isPromise(val: any) {
return (
this.isDef(val) &&
typeof val.then === 'function' &&
typeof val.catch === 'function'
)
}
// Преобразовать число
public toNumber(val: any, type: string) {
if (this.isUndef(type) || type === "float" || type === "double") {
let n = parseFloat(val);
return isNaN(n) ? val : n;
} else {
let n = parseInt(val);
return isNaN(n) ? val : n;
}
}
}
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )