2016-04-16 6 views
0

Ich baue ein Grunt-Plugin, und ich muss eines der Ziele in der Gruntfile.js auswählen.Erhalte das Ziel eines Grunt-Plugins

Gruntfile.js:

grunt.initConfig({ 
    plugin: { 
     options: {}, 
     target: {} // <= This is what I want to select 
    } 
}); 

Innerhalb von Aufgaben/plugin.js I options = this.options() kann das options Objekt zu bekommen, aber ich kann einfach nicht this.target verwenden. Irgendwelche Gedanken?

Antwort

1

Grunt stellt nur this.target für multi-tasks frei. Um den gleichen Wert für regelmäßige Aufgaben zugreifen (bar in grunt foo:bar), Zugriff auf die args array statt: this.args[0]

Update:

vorherige Antwort geschrieben wurde nach der offiziellen Terminologie von Grunt. Re-Lesen Sie Ihre Frage, Sie werden access the property within the config object mit der Methode grunt.config(), Drilldown auf die spezifischen Eigenschaften, die Sie versuchen, innerhalb der grunt Config-Objekt zuzugreifen. Basierend auf Ihren grunt.initConfig oben, dann würden Sie den Inhalt target Zugriff mit grunt.config('plugin.target');

+0

Ich verwende 'console.log (this.args [0])' die mich 'undefined' gibt, und' console.log (dies .args.length) 'was mir' 0' gibt. – jasonetco

+0

Wie lautet der Befehl, mit dem Sie die Aufgabe ausgeführt haben? – theaccordance

+0

'grunt.registerTask ('default', ['plugin']);' <- Das. Ich schätze, du wirst sagen, dass du 'plugin: target' ausführen willst, aber das ist nicht das, was ich machen möchte. – jasonetco