我有以下目录结构:
root
|
|_ package.json
|_ Gruntfile.js
|
|_ javascripts/
|_ ts/file.ts
在Gruntfile中我有这个:
//Project Config
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
typescript: {
base: {
src: ['./javascripts/ts/*.ts'],
dest: './javascripts/'
}
}
});
我希望js文件位于javascripts/
目录中。但是,当我运行grunt typescript
时,它会创建这个奇怪的目录结构:
root
|
|_ package.json
|_ Gruntfile.js
|
|_ javascripts/
|_ ts/file.ts
|_ javascripts/
|_ ts/
|_ file.js
我希望编译的file.js
出现在原始的javascripts/
目录中。
为什么会这样?我应该写什么来编译所需文件夹中的编译.js
文件?
答案 0 :(得分:5)
看到输出我会假设以下内容可行:
typescript: {
base: {
src: ['./javascripts/ts/*.ts'],
dest: '../../javascripts/'
}
}
我个人创作并维护grunt-ts
:https://npmjs.org/package/grunt-ts
答案 1 :(得分:1)
另一种选择是使用base_path
配置:
//Project Config
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
typescript: {
base: {
src: ['./javascripts/ts/*.ts'],
dest: './javascripts/',
options: {
base_path: './javascripts/ts'
}
}
}
});