Don't show unnecessary citation JS error on UI (#28433)

Fix #28226
This commit is contained in:
wxiaoguang 2023-12-12 19:31:11 +08:00 committed by GitHub
parent 717d0f5934
commit 0a794b2bcd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -2,7 +2,7 @@ import $ from 'jquery';
const {pageData} = window.config; const {pageData} = window.config;
const initInputCitationValue = async ($citationCopyApa, $citationCopyBibtex) => { async function initInputCitationValue($citationCopyApa, $citationCopyBibtex) {
const [{Cite, plugins}] = await Promise.all([ const [{Cite, plugins}] = await Promise.all([
import(/* webpackChunkName: "citation-js-core" */'@citation-js/core'), import(/* webpackChunkName: "citation-js-core" */'@citation-js/core'),
import(/* webpackChunkName: "citation-js-formats" */'@citation-js/plugin-software-formats'), import(/* webpackChunkName: "citation-js-formats" */'@citation-js/plugin-software-formats'),
@ -19,9 +19,9 @@ const initInputCitationValue = async ($citationCopyApa, $citationCopyBibtex) =>
const bibtexOutput = citationFormatter.format('bibtex', {lang}); const bibtexOutput = citationFormatter.format('bibtex', {lang});
$citationCopyBibtex.attr('data-text', bibtexOutput); $citationCopyBibtex.attr('data-text', bibtexOutput);
$citationCopyApa.attr('data-text', apaOutput); $citationCopyApa.attr('data-text', apaOutput);
}; }
export function initCitationFileCopyContent() { export async function initCitationFileCopyContent() {
const defaultCitationFormat = 'apa'; // apa or bibtex const defaultCitationFormat = 'apa'; // apa or bibtex
if (!pageData.citationFileContent) return; if (!pageData.citationFileContent) return;
@ -39,7 +39,14 @@ export function initCitationFileCopyContent() {
$citationCopyBibtex.toggleClass('primary', isBibtex); $citationCopyBibtex.toggleClass('primary', isBibtex);
$citationCopyApa.toggleClass('primary', !isBibtex); $citationCopyApa.toggleClass('primary', !isBibtex);
}; };
initInputCitationValue($citationCopyApa, $citationCopyBibtex).then(updateUi);
try {
await initInputCitationValue($citationCopyApa, $citationCopyBibtex);
} catch (e) {
console.error(`initCitationFileCopyContent error: ${e}`, e);
return;
}
updateUi();
$citationCopyApa.on('click', () => { $citationCopyApa.on('click', () => {
localStorage.setItem('citation-copy-format', 'apa'); localStorage.setItem('citation-copy-format', 'apa');