IntelliJ Idea捆绑JS文件

时间:2014-04-06 08:31:56

标签: intellij-idea gruntjs typescript intellij-plugin tsc

我正在开发一个庞大的项目,我正在使用Java,TypeScript,Jade和Less。 为了编译项目,我正在使用Maven(Java)+ Grunt(TS,Jade,LESS)。 Grunt是从maven调用的,因为maven驱动整个项目(包括后端)。随着grunt everthing工作完美,但我希望在想法中实时编译,在前端的ctrl + s命令。我正在使用FileWatchers插件,但是有一个问题。 我的html页面引用了bundle.js文件,即通过grunt编译。所有TypeScript文件都编译为JS文件和bundle.js文件。问题是,我无法实时编译bundle.js。我试图为tsc设置一个参数。好像

         tsc -out bundle.js "**/*.ts"

问题是,tsc不支持正则表达式。我找到了一些解决方案,但所有这些都需要一些文件定义,需要通过外部工具来完成并且不是自动的。

我不想要这个选项:

         tsc -out bundle.js @FileWithTSFiles.txt
         tsc -out bundle.js main.ts hello.ts helloWorld.ts

另一种解决方案是可行的,但不了解所有必要的信息。我有一个想法以这种方式使用FileWatchers插件(就像写一个类似的参数)

         tsc -out bundle.js $MacroToListAllFilesInProject$

因为这里有一些宏可用。问题是,我需要定义自定义宏来列出文件,我无法找到这样做的地方。

LESS文件存在相同问题。

1 个答案:

答案 0 :(得分:1)

  

Grunt(TS,Jade,LESS)。

如果您使用grunt-ts,只需使用以下目标:

        dev: {     
            src: ['./**/*.ts'],
            out: './bundle.js',
        },

参考:https://github.com/grunt-ts/grunt-ts

我想指出,在使用--out时,您应该使用reference文件来确定生成的javascript https://github.com/grunt-ts/grunt-ts#javascript-generation-and-ordering

的顺序