Только что начал прогреваться с помощью Node.js + Eclipse + TypeScript и уже несколько дней стучал головой. Вот код моего Server.ts файла, который я использовал с Node.js сайта (только что добавленном эталонного тракта в верхней части):Как правильно настроить Node.js + Eclipse + TypeScript?
/// <reference path="node.d.ts" />
var http = require('http');
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello World\n');
}).listen(1337, '127.0.0.1');
console.log('Server running at http://127.0.0.1:1337/');
Проблема заключается в том, если я не использую ссылочный путь в нижней части и используйте файл node.d.ts, затем он показывает «Невозможно найти имя», где я включаю http-модуль. Но если я использую node.d.ts и ссылаться на него, то он показывает кучу ошибок внутри node.d.ts():
import events = require("events"); // shows no such file or directory events.ts
import net = require("net"); // shows no such file or directory net.ts
Действительно там нет таких файлов, и даже они они должны быть JS файлы не ts (imho). Во всяком случае, выполнение «tsc -v» показывает мне, что я использую версию TypeScript 1.3. После googling я нашел и использовал это node.d.ts file for my TypeScript 1.3. Однако похоже, что это неправильный файл, или я пропустил какой-то момент.
Я все еще много смущен об этих файлах * .d.ts. Мой проект eclipse создал ссылку на некоторые lib.d.ts, но это не помогает, если я пытаюсь ссылаться на него вместо файла manual.d.ts вручную. Почему мы нуждаемся в них для даже фундаментальных команд, таких как require? И, конечно же, любая помощь будет оценена :)
Update Вот скриншот о node.d.ts жалуется:
Update2 Наконец, я понял :) Оказывается, машинопись сам ничего не знает о специальных javascript-вещах, которые присутствуют на Node.js (эти функции отсутствуют в обычном браузере javascript). Вот почему компиляторы TypeScript жалуются на требования, которые являются специфичными для Node.js. Поэтому нам нужно некоторое определение моста для компилятора TypeScript о конкретных вещах Node.js. Поэтому нам нужно включить node.d.ts. То же самое нам нужно сделать для других фреймворков javascript или libs, чтобы иметь возможность использовать их в TypeScript. Остается вопрос, почему Eclipse жалуется на мой файл node.d.ts ...
Update3. Я установил плагин Enide Studio 2014 для узла, который включает в себя плагин Typecs на компьютере моей работы (Maverics). Вот мой список установленных плагинов для Eclipse:
Теперь я не заметил, что нет плагина Enide, и я помню его установка заняла довольно долго вчера, поэтому благодаря @SteveFenton месте, это может быть проблемой. Сегодня начали устанавливать Enide плагин снова и вот снимок экрана процесса установки:
Та же установка была успешной на той же версии Eclipse (Luna) на моем Йосемити макинтош дома.
Можете ли вы сказать нам, что сообщения об ошибках для этих трех линий? Если вы добавите следующий пример в файл TypeScript в своем проекте, вы получите похожие ошибки? http://bit.ly/1BGST0c – Fenton
@SteveFenton У меня есть обновленный образ экрана для печати в вопросе. Он показывает, что невозможно прочитать файл events.ts. Интересно отметить, что я загрузил и использовал другой файл node.d.ts вчера (не помню, откуда), и он работает. Однако для таких парней, как я, которые не очень сильны с javascript/typescript, было бы хорошо знать, как мы можем проверить, используется ли неправильный node.d.ts. Поэтому я предполагаю, что остальная часть кода является правильной. – Centurion
@SteveFenton Извините. Пробовал ваш пример, и он также дает мне аналогичную ошибку в отношении такого файла или каталога example-one.ts – Centurion