Wiele grunt.js skrypt zaczyna się od:co powoduje/* moduł globalny: false */w grunt.js
/*global module:false*/
module.exports = function(grunt) {
Ale co przyczynę komentarzu w pierwszej linii?
Wiele grunt.js skrypt zaczyna się od:co powoduje/* moduł globalny: false */w grunt.js
/*global module:false*/
module.exports = function(grunt) {
Ale co przyczynę komentarzu w pierwszej linii?
Jest to dyrektywa dla JSLint lub JSHint. Informuje parser JSLint/JSHint, że identyfikator module
jest zdefiniowany w innym miejscu, więc nie wyświetla błędu informującego, że module
jest niezdefiniowany. Bez tego parser napotka odniesienie do module
i myśli, że próbujesz odwołać się do niezdefiniowanej zmiennej.
Z JSLint docs:
JSLint rozpoznaje także dyrektywę
/*global*/
, które mogą wskazywać na JSLint że zmienne użyte w tym pliku zostały określone w innych plikach. Dyrektywa może zawierać rozdzielaną przecinkami listę nazw.
A JSHint docs:
Oprócz opcji, można pozwolić JSHint wiedzieć, co zmienne globalne należy spodziewać:
/*global DISQUS:true, jQuery:false */
W powyższym przykładzie, JSHint pozwoli Ci zastąpić
DISQUS
, ale narzekać, jeśli spróbujesz zastąpićjQuery
.