Estoy tratando de importar 2 componentes de la carpeta de components . La clase de ambos componentes se export default .
Sin embargo, recibí un mensaje de error que indicaba que debería usar llaves en mi declaración de importación. Sin embargo, los dos componentes anteriores no utilizan named export , por lo que no se necesitan llaves al importarlos.
¿Por qué no funciona? ¿Cómo puedo hacer que esto funcione?
como dijo @casimirth anteriormente, ya que esos componentes son de archivos diferentes, aunque estén en la misma carpeta, entonces debe importarlos por separado como se muestra a continuación
import Login from "./components/Login" import Question from "./components/Question"Pero creo que sé lo que estás buscando, poder importarlos todos en una línea , ¿verdad?
a continuación hay un par de formas
1. Póngalos todos en un solo archivo y use exports , ya que en un archivo solo un componente puede usar export default
// ./components/componentfile.js export const Login = () => {... export const Question = () => {...luego, donde los esté usando, puede importarlos como
import {Login, Question} from '.components/componentfile'si uno de los archivos se exporta por defecto como se muestra a continuación
const Login = () => {... export const Question = () => {... export default Login;entonces el uso de ellos será como se muestra a continuación
import Login , { Question } from './components/componentfile'2. Desea mantener estos dos archivos por separado y aún importarlos en una línea
luego debe agregar otro archivo en el archivo de componentes, index.js preferido, ya que si nombra un directorio sin especificar un archivo, index.js es uno de los llamados de forma predeterminada
Entonces, su directorio de componentes tendrá tres archivos,
./components -index.js -login.js -questions.jsluego, sin editar nada en su login.js,questions.js impórtelos en su index.js y expórtelos como se muestra a continuación
import Login from './login' import Question from './question' export {Login, Question}luego, donde los está usando, simplemente impórtelos como se muestra a continuación
import {Login, Question} from './components' //note with index.js no need to mention //it on importPuede crear un archivo index.js en la carpeta de componentes que importa y exporta todos los componentes, luego podrá importar los componentes en la misma línea.
Esta pregunta y respuesta pueden ayudarlo, y la parte especial es que puede realizar tanto la importación como la exportación usando una sola línea de código.
Intenta importarlos individualmente:
import Login from "./components/Login" import Question from "./components/Question"