Импортировать модуль узла с systemJs в файле машинописи

0

Поэтому я попытался импортировать модуль узла (immutablejs) в свой файл машинописных файлов:

/// <reference path="../node_modules/immutable/dist/immutable.d.ts" />
import { Map } from 'immutable';
var myMap = Map();

Вот мои теги скриптов в моем index.html:

<script src="node_modules/systemjs/dist/system.js"></script>
<script src="node_modules/typescript/lib/typescript.js"></script>
<script>
    System.config({
        transpiler: 'typescript',
        packages: {
            src: {
                defaultExtension: 'ts'
            }
        }
    });
    System
    .import('src/main.ts')
    .then(null, console.error.bind(console));
</script>

Хотя intellisense работает в VS Code, мой браузер говорит мне, что он не может найти неизменяемый: system.src.js: 1057 GET http://localhost: 3000/immutable/ 404 (Not Found)

Импорт самописного модуля ввода текста с относительным путем, который только что разработан.

Что я делаю не так?

Теги:
import
node-modules
systemjs

1 ответ

2
Лучший ответ

Наличие правильных определений типов для удовлетворения компилятора typescript не позволяет systemjs знать, где загрузить реальный код javascript для immutablejs.

Когда вы используете systemjs, ваша очередь настраивать systemjs соответственно, чтобы он знал, где загружать библиотеки. Если вы этого не сделаете, он попытается загрузить импортированный модуль как файл с сервера с тем же именем, что и ваш импорт. См. Этот ответ для одной и той же проблемы:

Как настроить SystemJs для ImmutableJs для работы в проекте Angular 2

Подробнее о том, как вы можете настроить systemjs, см. В документах: https://github.com/systemjs/systemjs/blob/master/docs/config-api.md#map

Вы также можете опустить ссылочный путь для файла d.ts когда ваш tsconfig настроен таким образом, чтобы он автоматически node_modules поиск в node_modules или с помощью инструмента, такого как типизация, для установки определений для библиотек, которые не предоставляют некоторые типизации с их модулем. (См. Здесь: https://github.com/typings/typings - но это не должно требоваться для immutablejs).

  • 0
    Спасибо! system.config.js был проблемой!

Ещё вопросы

Сообщество Overcoder
Наверх
Меню