【发布时间】:2018-03-18 19:57:57
【问题描述】:
在开发 Meteor 包时,我可以选择使用导出包内容
api.export('VariableName');
api.addFiles('main.js');
必须“全局”声明包中的相应变量以匹配此定义(在main.js 中):
VariableName = { /* something... */ }
但是,这会导致 eslint 在使用此变量的每一行上抛出 no-undef:
1:1 error 'VariableName' is not defined no-undef
....
141:1 error 'VariableName' is not defined no-undef
将no-undef 切换到off 是不可取的,因为它是 eslint 发现未使用变量的最强大工具之一。
如何在不关闭规则且不在变量前的每一行放置异常的情况下抑制此错误?
编辑:
通过添加全局规则/* global VariableName */ 我将收到一个只读错误:
Read-only global 'VariableName' should not be modified no-global-assign
我忘了提到,这个包导入了一个外部 npm 包,修改了它的一些功能以与 Meteor 的环境兼容,然后再次导出它。
所以代码实际上是:
VariableName = require('packageName');
【问题讨论】:
标签: javascript meteor package eslint