экспорт 'default' (импортированный как 'n') не найден в './n' - PullRequest
0 голосов
/ 22 мая 2019

Я хочу включить пространство имен модулей, и когда я это делаю, он выдает предупреждение (и мой код не работает), я импортирую свой модуль вот так

import * as agl from "./agl";

Ииспользуя его так:

var vbo = new agl.VertexBuffer();

Мой модуль состоит только из включения модулей в одно пространство имен:

import VertexArray from "./VertexArray";
import Display from "./Display";
import VertexBuffer from "./VertexBuffer";
import IndexBuffer from "./IndexBuffer"
import Shader from "./Shader";
import ShaderProgram from "./ShaderProgram";
import Texture from "./Texture";
import BufferLayout from "./BufferLayout";




export default {
  VertexArray,
  Display,
  VertexBuffer,
  IndexBuffer,
  Shader,
  ShaderProgram,
  Texture,
  BufferLayout
}

В чем может быть проблема, и как я могу импортировать пространство имен модулей?

Ответы [ 2 ]

0 голосов
/ 22 мая 2019
export default {
  VertexArray,
  Display,
  VertexBuffer,
  IndexBuffer,
  Shader,
  ShaderProgram,
  Texture,
  BufferLayout
}

Это ужасно и вызывает твою проблему. Этот модуль выполняет экспорт объекта по умолчанию, а не просто использует именованный экспорт. Вы должны использовать

export {
  VertexArray,
  Display,
  VertexBuffer,
  IndexBuffer,
  Shader,
  ShaderProgram,
  Texture,
  BufferLayout
}

вместо того, чтобы ваша import * as agl … работа.

0 голосов
/ 22 мая 2019

Экспорт по умолчанию должен быть импортирован следующим образом:

import agl from "./agl";

Ваш код не работает, потому что вы пытаетесь импортировать все the named exports.

Проверка this чтобы узнать больше об этом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...