2014-10-24 5 views
3

я использую WebStorm и у меня есть проект со следующей структурой:Настройка WebStorm/PhpStorm скомпилировать ts-файлы .js в «JS» папку

webApp 
|--style 
|--includes 
|--ts 
|--js 

Где «WebAPP» является корень проекта.

Я хотел бы настроить Watcher файла, который компилирует файл .ts в пределах «ц» папку в .js файлы в «Js» папку.

В диалоговом окне наблюдател я установил:

"$Projectpath$/js/ --sourcemap $FileName$" 

в аргументов поля и

"$Projectpath$/js/$FileNameWithoutExtension$.js:$Projectpath$/js/$FileNameWithoutExtension$.js.map" 

в выходных путей, чтобы обновить поле.

каждый раз, когда я изменить ts-файл WebStorm показывает ошибку, как это:

/usr/local/bin/tsc /htdocs/webapp/js/ --sourcemap test.ts 

error TS6053: File '/htdocs/webapp/js/.ts' not found. 

Я пытался несколько раз, чтобы изменить макросы, чтобы указать на внешние JS папку, но единственный путь в ведьму он работал, позволяя вариант по умолчанию, таким образом, transpiler скомпилировал .ts-файл, который стал «узлом», который содержит файл .js и файл .map.

Есть ли способ выполнить мою цель?

ответ

1

--out опция заставит TSC объединить все ваши файлы в $ FileNameWithoutExtension $ .js

Если вы хотите иметь отдельные .js, попробуйте выполнить следующие настройки:

Arguments: --sourcemap --outDir $ProjectFileDir$/js/$FileDirPathFromParent(ts)$ $FileName$ 
Output paths: $ProjectFileDir$/js/$FileDirPathFromParent(ts)$$FileNameWithoutExtension$.js:$ProjectFileDir$/js/$FileDirPathFromParent(ts)$$FileNameWithoutExtension$.js.map 
+0

он работает как очарование! TNX – Plastic

0

Следующие шаги должны работать как в Интернете, так и в PHPstorm.

У вас есть файл tsconfig.json?

Если нет, нажмите правой кнопкой на Название проекта ->Новый ->tsconfig.json. Этот файл будет создан в папке Root вашего проекта. Оставь это!

Если да, то открыть этот файл, который должен быть чем-то вроде этого:

{ 
    "compilerOptions": { 
    "module": "commonjs", 
    "target": "es5", 
    "sourceMap": true, 
    }, 
    "exclude": [ 
    "node_modules" 
    ] 
} 

и просто добавить опцию: ключ

"outDir": "JS_FOLDER_PATH_FROM_PROJECT_ROOT" 

в "compilerOptions":

"compilerOptions": { 
    "module": "commonjs", 
    "target": "es5", 
    "sourceMap": true, 
    "outDir": "JS_FOLDER_PATH_FROM_PROJECT_ROOT" 
}, 

Так просто!

СОВЕТ: Используйте автозаполнение IDE, чтобы найти дополнительные параметры!