Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PhpStorm file watchers可缩小和合并多个文件夹中的JS文件_Phpstorm - Fatal编程技术网

PhpStorm file watchers可缩小和合并多个文件夹中的JS文件

PhpStorm file watchers可缩小和合并多个文件夹中的JS文件,phpstorm,Phpstorm,我正在努力做到以下几点 我在应用程序根目录的assets/js文件夹中有原始资源,比如JavaScript源文件。我也有一个公用文件夹,在那个里应该去缩小文件,将在应用程序中加载 我想要的是,当我更改我的js文件时,我想要IDE创建它的缩小版本,然后将这些缩小的文件合并到公用文件夹中的一个文件中 我需要两个文件监视程序,但不知道如何配置它们 我尝试了YUI Compressor的默认选项,以及那些在源文件所在的同一文件夹中构建缩小文件的选项。但我无法将这些文件与File Watcher合并 我还

我正在努力做到以下几点

我在应用程序根目录的assets/js文件夹中有原始资源,比如JavaScript源文件。我也有一个公用文件夹,在那个里应该去缩小文件,将在应用程序中加载

我想要的是,当我更改我的js文件时,我想要IDE创建它的缩小版本,然后将这些缩小的文件合并到公用文件夹中的一个文件中

我需要两个文件监视程序,但不知道如何配置它们

我尝试了YUI Compressor的默认选项,以及那些在源文件所在的同一文件夹中构建缩小文件的选项。但我无法将这些文件与File Watcher合并

我还创建了两个作用域,一个用于源JS文件,另一个用于缩小JS文件

我甚至不确定文件观察者是否能做到这一点。我说的是多个文件夹和递归作用域


如果有任何帮助,我将不胜感激。

我要做的是让YUI压缩器在保存.min.js文件时创建,然后用作外部工具设置->工具->外部工具此工具如果您有windows,您可以尝试调整脚本或像docker一样在linux环境中运行此工具,vm etc-最终使用设置中的远程SSH外部工具

最后,您可以为工具设置一个keymap,以便随时运行它。
您也可以将其设置为文件监视程序,但这将导致imho处理过多

文件监视程序本身不能做任何事情,因为它只是一种使用CLI设置工具作为文件更改侦听器的方法。因此,您需要找到一种工具,将缩小的文件合并为单个文件,并将其设置为观察者、外部工具等。您可以在web上找到大量此类文件-请参阅 例如

但是,我建议使用Grunt、Gulp、webpack等工具,而不是使用作为观察者设置的两个单独的工具,。。。 您可以尝试使用,例如:

module.exports = function (grunt) {
grunt.initConfig({

    ngmin: {
           concat:{
            src: ['assets/js/*.js'],
            dest: 'public/out.min.js'
    }}
});
grunt.loadNpmTasks('grunt-ngmin');

grunt.registerTask('default', ['ngmin' ])

您可以使用运行任务,或者将其配置为文件监视程序

好的,我已经设置了gulp任务来缩小和压缩文件。然后,我用gulp任务为我的JS文件创建了自定义文件查看器。现在,一切都按照我的预期运行,无需手动运行任何东西。谢谢大家

我知道的是如何在保存原始js文件时创建缩小的js文件,但要将所有的js缩小文件合并为一个文件-首先,为什么要这样做?其次,这并不常见。您对js缩小文件感兴趣吗?我希望合并所有文件,因为我将只在正文末尾加载一个缩小文件,并有一个HTTP请求。不是一打。我知道如何创建缩小的文件,这与YUI compressor的默认选项一起工作。我可以将所有文件缩小到一个文件夹中吗?假设我有一个专用的min文件夹,所有缩小的文件都放在这个文件夹中,而不管源文件在哪个文件夹中。我可以将此设置为递归地遍历js源文件夹中的所有文件夹吗?假设我有应用程序某些部分的文件夹?管理员JS、产品JS等?也可以请澄清这里的术语,我不太明白它在创建文件观察器的权利?什么是工作目录,什么是要刷新的输出路径?文件监视程序的结果所在的工作目录是否为?例如,min文件?我尝试了几个选项,但没有实现我想要的,我想我不太明白什么是什么。我想所有的选项都很清楚它们是什么:工作目录就是保存js文件时所在的目录。要刷新的输出路径是.min.js文件要刷新的位置。你说你已经完成了js文件的缩小,所以我没有包括那部分。是的,我包括了。我只是想把所有缩小的文件保存在一个文件夹中,这样创建合并文件就更容易了。我会指向那个文件夹,从那个里收集所有文件,然后创建一个文件。但我无法将生成的文件移动到任意文件夹。我希望文件观察者像这样:递归地观察assets/JS文件夹中的所有JS文件,在assets/JS/min文件夹中构建min文件。其他:Wathch用于assets/js/min文件夹中的所有文件。将文件合并为一个文件并保存在public/js文件夹中。我能这样做吗?你知道这个讨论超出了你的问题范围。您可以创建一个路径变量Settings->Appearance&Behavior,然后将其作为您的观察者设置的输出