fix: copy token to search input if clipboard.writeText is not available (close #6)

This commit is contained in:
JustSong 2023-04-25 09:46:58 +08:00
parent 5ed4a3d405
commit 423978baf4
3 changed files with 9 additions and 2 deletions

View File

@ -1,7 +1,7 @@
import React, { useEffect, useState } from 'react'; import React, { useEffect, useState } from 'react';
import { Button, Form, Label, Message, Pagination, Table } from 'semantic-ui-react'; import { Button, Form, Label, Message, Pagination, Table } from 'semantic-ui-react';
import { Link } from 'react-router-dom'; import { Link } from 'react-router-dom';
import { API, copy, showError, showSuccess, timestamp2string } from '../helpers'; import { API, copy, showError, showInfo, showSuccess, showWarning, timestamp2string } from '../helpers';
import { ITEMS_PER_PAGE } from '../constants'; import { ITEMS_PER_PAGE } from '../constants';
@ -243,7 +243,8 @@ const TokensTable = () => {
if (await copy(token.key)) { if (await copy(token.key)) {
showSuccess('已复制到剪贴板!'); showSuccess('已复制到剪贴板!');
} else { } else {
showError('复制失败!'); showWarning('无法复制到剪贴板,请手动复制,已将令牌填入搜索框。')
setSearchKeyword(token.key);
} }
}} }}
> >

View File

@ -2,5 +2,6 @@ export const toastConstants = {
SUCCESS_TIMEOUT: 500, SUCCESS_TIMEOUT: 500,
INFO_TIMEOUT: 3000, INFO_TIMEOUT: 3000,
ERROR_TIMEOUT: 5000, ERROR_TIMEOUT: 5000,
WARNING_TIMEOUT: 10000,
NOTICE_TIMEOUT: 20000 NOTICE_TIMEOUT: 20000
}; };

View File

@ -31,6 +31,7 @@ export function isMobile() {
} }
let showErrorOptions = { autoClose: toastConstants.ERROR_TIMEOUT }; let showErrorOptions = { autoClose: toastConstants.ERROR_TIMEOUT };
let showWarningOptions = { autoClose: toastConstants.WARNING_TIMEOUT };
let showSuccessOptions = { autoClose: toastConstants.SUCCESS_TIMEOUT }; let showSuccessOptions = { autoClose: toastConstants.SUCCESS_TIMEOUT };
let showInfoOptions = { autoClose: toastConstants.INFO_TIMEOUT }; let showInfoOptions = { autoClose: toastConstants.INFO_TIMEOUT };
let showNoticeOptions = { autoClose: false }; let showNoticeOptions = { autoClose: false };
@ -74,6 +75,10 @@ export function showError(error) {
} }
} }
export function showWarning(message) {
toast.warn(message, showWarningOptions);
}
export function showSuccess(message) { export function showSuccess(message) {
toast.success(message, showSuccessOptions); toast.success(message, showSuccessOptions);
} }