2015-04-01 36 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代替。