Я пытаюсь понять, что делает другой синтаксис es import
и когда мне нужно их использовать.
Я использую typescript 1.6 (последняя версия на данный момент).
Я видел несколько примеров выполнения импорта. Один выглядит так:
import {Aurelia} from "aurelia-framework";
Что дает мне доступ к Aurelia
из Aurelia Framework. Я более или менее понимаю это, но я не уверен, откуда смотрит часть в кавычках.
Вот еще один, который решарпер вставил в мой код:
import myJsServiceActions = require("../../service_actions/myJsFile");
Это также дает мне доступ к материалам в myJsFile. Но синтаксис совсем другой. И это, кажется, ссылка на путь в кавычках.
Также в этом не используются фигурные скобки {}, как в первом. Когда я пытаюсь вставить что-то вроде {ServiceActions} (модуль в этом файле), он выдает ошибку require
, говорящую, что ожидается строковый литерал.
Чем отличается это второе использование (от первого)?
Я также видел эти варианты использования в Интернете, но я предполагаю, что это просто более старый синтаксис (если они все еще используются, укажите, чем они отличаются):
/// <reference path="myModules.d.ts" />
....
import gt = module('greeter');
И наконец, как он находит материал в кавычках? Я пробовал это:
import breeze from "breeze";
и я получаю ошибку:
Не могу найти модуль "бриз"
Но в моем config.js они определены рядом друг с другом:
map: {
//....
"aurelia-framework": "github:aurelia/[email protected]",
"breeze": "npm:[email protected]",
//.....
}
Мне кажется, что если импорт aurelia-framework работает, то и breeze тоже должен работать. Но я предполагаю, что проблема заключается в моем незнании того, как работает «импорт».
jspm init
. Я предположил, что это обычный менеджер зависимостей веб-разработки. Что-то, что позволит вам ссылаться на вещи по красивому имени (breeze) вместо полного имени ([email protected].) - person Vaccano   schedule 20.11.2015