Так что большинство примеров, которые я нашел при импорте пакетов jspm в машинописный текст, предположил, что я хотел использовать Systemjs для загрузки и интерпретации их в браузере. Тем не менее, я бы предпочел использовать tsc
для сборки модулей commonjs и импортировать только код js, так как мне кажется, что для меня более общий и устойчивый к ошибкам подход.typescript: import jspm libraries
Так что моя структура каталогов выглядит следующим образом:
src/index.ts
jspm_packages/...
config.js
tsconfig.json
С TSconfig, имеющий следующее содержание:
{
"compilerOptions": {
"target": "es5",
"module": "commonjs",
"noEmitOnError": true,
"noImplicitAny": false,
"rootDir": "src",
"outDir": "target/app",
"sourceMap": true,
"experimentalDecorators": true,
"emitDecoratorMetadata": true,
"declaration": true
},
"exclude": [
"jspm_packages",
"node_modules",
"typings",
"target"
]
}
Для целей тестирования я установил угловой 2 с jspm install npm:angular2
и пытался импортировать его в моем index.ts
via import { bootstrap } from 'angular2/platform/browser';
При работе tsc
, я получаю ошибку
src/index.ts(1,27): error TS2307: Cannot find module 'angular2/platform/browser'.
Теперь я удивляюсь, могу ли я сделать jspm-пакеты известными машинописному шрифту? Я чувствую, что я все это пробовал, удалив jspm_packages из списка исключений tsconfig, переключаясь на разрешение модуля узла или создание модуля systemjs. Возможно, я просто не нашел правильную комбинацию. Любые намеки на то, что попробовать дальше?
Первая строка с сайта JSPM является «_jspm является менеджером пакетов для универсального модуля загрузчика SystemJS, построенный на вершине модуля динамического ES6 loader_». Я не думаю, что использование jspm без system.js - правильный подход здесь. –