2013-10-13 57 views
0

PHP文件,我還是一個新手,咕嚕和我有困難「看」的PHP文件。聽使用Grunt.js

會發生什麼是livereload對於任何php文件都可以很好地工作,但是我想啓動任何關於php文件更改的任務都不會發生......在這種情況下,我想使用ftp-deploy在FTP文件在每次改變(這種方式我得到通過鏈接到PHP文件直接在我的服務器上,並使用一個簡單的MAMP安裝,以保持我的工作流)的時間推到我的服務器。

我的表的代碼是這樣的:

watch: { 
    concat: { 
     files: '<%= project.src %>/js/{,*/}*.js', 
     tasks: ['concat:dev', 'jshint'] 
    }, 

    sass: { 
     files: '<%= project.src %>/scss/{,*/}*.{scss,sass}', 
     tasks: ['sass:dev', 'cssmin:dev', 'autoprefixer:dev'] 
    }, 

    banana: { 
     files: '<%= project.src %>/php/*.php', 
     tasks: ['ftp-deploy'] 
    }, 


    livereload: { 
     options: { 
     livereload: LIVERELOAD_PORT 
     }, 
     files: [ 
     '<%= project.app %>/{,*/}*.html', 
     '<%= project.assets %>/css/*.css', 
     '<%= project.assets %>/js/{,*/}*.js', 
     '<%= project.src %>/php/{,*/}*.php', 
     '<%= project.assets %>/{,*/}*.{png,jpg,jpeg,gif,webp,svg}' 
     ] 
    } 
    } 

所以一切都完美的作品甚至livereload的PHP文件,以巨大的不同在於FTP部署任務不會發生。

如果我將ftp-deploy任務添加到sass目標或concat目標上,它完美的工作,但在香蕉目標上(是的......我開始感到沮喪),根本不起作用!

我打破我的頭,這...

有人能幫助我嗎?

在此先感謝。

回答

0

嗯...看着你的手錶任務,好像你想要.php文件在/php/目錄或任何子目錄中。在這種情況下,也許你真的想這樣:

banana: { 
    files: '<%= project.src %>/php/**/*.php', // the ** says this or any sub-directory 
    tasks: ['ftp-deploy'] 
}, 

我的猜測是,你的livereload任務的目標還有:
'<%= project.src %>/php/{,*/}*.php'
這也許可以改寫爲(不是100%肯定):
'<%= project.src %>/php/**/*.php'