jslint错误的属性名称' $ wrapper'

时间:2016-06-30 12:35:30

标签: javascript jquery jslint

今天我第一次似乎问了一个没有立即突出重复的问题!

我正在通过很多JSLint给我的错误消息并试图解决它们。

我有几个告诉我我的财产名称不好,如果你有点好奇他们是:

  • $包装
  • $ EL
  • $滑块
  • $ feedbackWrapper
  • $反馈
  • $ labelWrapper
  • $标签

我感觉这是因为开头的$符号,但为什么会出现这个问题呢?据我所知,在变量名称的开头使用$来缓存jQuery对象是很常见的做法。

无论如何,我自然喜欢用符合良好标准的东西来纠正这个错误,但是如果它只是人们可以忍受的那些东西之一,那么有没有办法告诉jslint忽略这些?

由于

编辑:我不能分享全班,因为我所在的公司在项目中使用它,但这里是渲染函数,其中设置了很多这些属性。

render: function () {
    TextImage.prototype.render.call(this);

    var $slider = this.$wrapper.find('.in-panel');
    this.$wrapper = this.$el.find('.panel');

    this.$labelWrapper = this.$wrapper.find('.in-panel');

    this.$feedbackWrapper = this.$wrapper.find('.text');
    this.$feedback = this.$feedbackWrapper.find('.feedback');
    this.$feedbackWrapper.addClass("hidden");

    this.itemIndex = -1;
    this.createSlider($slider);

},

1 个答案:

答案 0 :(得分:1)

如果您在JSlint中运行此代码,您会看到,它不喜欢以$,_和其他非字母符号开头的属性。

我发现的那些:     它不喜欢CONTAIN $的属性(虽然它喜欢变量)     它不喜欢以_开头的属性,尽管它们可以包含 我鼓励你做更广泛的搜索。 如果你复制粘贴这些,你会看到一些抱怨的例子

var a = 23;
var $b = 24;
var c = {};
c.$a = 4;
c.a$t = 5;
c.c_a = 6;
c._a = 53;
c._d = 25;
c.this = 32;
c.window = 55;