2015-04-01 73 views
1

我正在寫一個基本的firefox插件,而jshint抱怨自己沒有被定義。jshint - firefox addon - 'self'未定義

我用自己的內容腳本這樣的:

self.port.emit("message", "payload"); 

我試圖設置的選項MOZ在我.jshint.rc文件,但我仍然得到錯誤。我應該在.jshint.rc的'globals'中添加'self'還是缺少其他內容?

+2

如果'self'是環境提供的全局變量,那麼只需將它添加到您的'globals'指令中即可。 – 2015-04-01 13:04:03

+0

我相信這不是一個錯誤,因爲'self'由firefox提供,不需要全局定義,它只是在飛行中工作。 – 2015-04-01 14:02:37

+0

它看起來像SDK和'self'在這種情況下是由Firefox SDK環境中的addon SDK設置的。 – erosman 2015-04-01 17:10:31

回答

1

假設self是環境提供的全局變量,那麼您只需將其添加到您的globals指令中即可。你可以做你的.jshintrc配置文件:

{ 
    "globals": { 
    "self": false 
    } 
} 

或內嵌文件本身:

/*globals self: false */ 

false在上面的例子告訴JSHint這個變量是隻讀的。任何分配給它的嘗試都會觸發警告。如果您確實需要分配給它,則可以使用true代替。