#javascript #reactjs #mdxjs
Вопрос:
Я пытаюсь загрузить файл .js в свой файл уценки в React с помощью gatsby-plugin-mdx
. Однако я сталкиваюсь с ошибкой импорта, которая отображается в виде ПРЕДУПРЕЖДЕНИЯ следующим образом:
предупреждение ./.кэш/кэширует/гэтсби-плагин-многомерные выражения/многомерные выражения-области-dir/7cd2ab5f9fe4b662b5bb93052ee9e f2c.js Ошибка при попытке импорта: «Test2» не экспортируется из «../../../../src/страницы/test2 »
(импортирован как «Test2»).
Глядя на кэш, он кажется достаточно безобидным:
import { Test2 } from "../../../../src/pages/test2";
import * as React from 'react';
export default {
Test2,
React
};
Содержимое импорта кажется произвольным, и предупреждение будет таким же (и содержимое не будет загружаться). Я использовал простую функцию экспорта по умолчанию, возвращающую тег h1, например, для эксперимента.
Мой файл .md довольно прямолинеен:
# Testing 1
top
import { Test2 } from "../pages/test2"
<Test2 />
bottom
Я подозревал, что это проблема с конфигурацией, но мне еще предстоит решить ее в своем gatsby-config.js, который в настоящее время выглядит следующим образом:
module.exports = {
siteMetadata: {
title: 'Marco Sousa Blog',
author: 'Marco Sousa'
},
plugins: [
'gatsby-plugin-dark-mode',
'gatsby-plugin-react-helmet',
'gatsby-plugin-sass',
'gatsby-plugin-sharp',
{
resolve: 'gatsby-source-filesystem',
options: {
name:'src',
path: `${__dirname}/src/`
}
},
{
resolve: 'gatsby-transformer-remark',
options: {
plugins: [
'gatsby-remark-relative-images',
{
resolve: 'gatsby-remark-images',
options: {
maxWidth: 750,
linkImagesToOriginal: false
}
},
{
resolve: `gatsby-remark-katex`,
options: {
// Add any KaTeX options from https://github.com/KaTeX/KaTeX/blob/master/docs/options.md here
//strict: `ignore`,
}
},
{
resolve: `gatsby-remark-prismjs`,
options: {
classPrefix: "language-",
inlineCodeMarker: null,
aliases: {},
showLineNumbers: true,
noInlineHighlight: false,
languageExtensions: [
{
language: "superscript",
extend: "javascript",
definition: {
superscript_types: /(SuperType)/,
},
insertBefore: {
function: {
superscript_keywords: /(superif|superelse)/,
},
},
},
],
prompt: {
user: "root",
host: "localhost",
global: false,
},
// By default the HTML entities <>amp;'" are escaped.
// Add additional HTML escapes by providing a mapping
// of HTML entities and their escape value IE: { '}': 'amp;#123;' }
escapeEntities: {},
}
},
]
}
},
{
resolve: "gatsby-plugin-page-creator",
options: {
path: `${__dirname}/src/`,
},
},
{
resolve: `gatsby-plugin-mdx`,
options: {
extensions: [`.mdx`, `.md`],
},
},
],
}
I think my querying/slug usage is fine, as the site and posts are operable prior (and after) to attempting to implement mdx. Observing the gatsby-plugin-mdx docs, I attempted to use gatsbyRemarkPlugins
to encapsulate the other plugins, but this did not change the warn. What, more exactly, do you think could be the problem with my mdx usage?