javascript - JShint 警告 : jQuery plugin marked incorrectly 'defined but never used' in AMD

标签 javascript jquery requirejs amd jshint

JSHint 在 jQueryPlugin 声明中抛出“jQueryPlugin 已定义但从未使用”错误。

如何告诉 JSHint 忽略此特定错误或以 JSHint 理解的方式定义 jQueryPlugin。

    define([
        'jquery',
        'underscore',
        'backbone',
        'some-jquery-plugin'
    ], function ($, _, Backbone, jQueryPlugin) //here is the error
    {
        'use strict';
        var someView = Backbone.View.extend(
        {
            someFunction: function ()
            {
                $('#a-css-id').jQueryPlugin();
            },
        });
        return someView;
    });

我尝试过的事情

/* 导出的 jQueryPlugin */ 文件顶部的导出语句对此不起作用(在其他问题中已建议)

/* jshintused:false*/ 有效,但使规则在文件中全局化(2000多行代码),所以我不认为它是一个可行的解决方案。

/* jshintignore:line */ 显然在构建系统中未启用 - 所以我无法提交此更改 (grunt-contrib-jshint)

最佳答案

最简单的解决方案是从参数列表中删除 jQueryPlugin:

define([
        'jquery',
        'underscore',
        'backbone',
        'some-jquery-plugin'
    ], function ($, _, Backbone) 
    {

两个原因:

  1. 您不使用该值。 (您使用 $(...).jQueryPlugin,这是不同。)

  2. 我已经使用 RequireJS 加载了许多 jQuery 插件,但从未遇到过任何以模块形式返回有用值的插件。它们都将自身安装在 $ 上,并且通常返回 undefined 作为其模块值。

关于javascript - JShint 警告 : jQuery plugin marked incorrectly 'defined but never used' in AMD,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30145552/

相关文章:

php - 表单上的上传和提交按钮

jquery - 有条件地显示/隐藏 div

requirejs - 将CDN与RequireJS优化器一起使用

javascript - 关闭 requirejs promise

javascript - 无法设置jssor slider 的高度

用于 JSON 通信和 DOM 操作的 javascript 框架?

c# - 稳步减慢从 javascript 到 WCF 服务的 ajax 调用

javascript - D3 : Zoom with multiple line charts somehow combines their data arrays

javascript - 有没有办法在导入VueJS组件时使用RequireJS?

Javascript 函数在复选框的 onclick 上不起作用