【发布时间】:2016-01-04 17:54:35
【问题描述】:
Phpstorm 一直告诉我我有一个未定义的变量 input.connectto
HTML:
<div class="b-showColorinList" data-connectto="123456" data-othervalue="Lorem Ipsum">...
JS:
$(document).on('click', '.b-showColorinList', function() {
cm.showColorInList( $(this) );
});
还有:
/**
* Uses ajax to get other color in list view
* @param {object} inputObj
*/
cm.showColorInList = function(inputObj) {
"use strict";
var input = inputObj.data(),
parent = $("#"+input.connectto),
othervalue = input.othervalue;
我知道我可以忽略 jshint 中的一行,但是有什么方法可以使用 jsdoc 使其正确,例如将 input 定义为对象
【问题讨论】:
-
如果您使用的是 jQuery,为什么不使用
data("connectto")(如$('.b-showColorinList').data('connectto');)? -
对不起,我把代码缩短了一点。一个数据字段实际上还有更多。现在修复了
-
我明白——我只是在想——如果这不是任务关键型代码或者不是经常执行或需要立即执行且几乎没有延迟的东西..那么为什么不打电话给@ 987654328@具有特定参数的方法。
-
试试这个(JSDoc):
/** * @typedef {Object} input * @property {String} connectto * @property {String} othervalue */——只要格式化好(cmets 不允许多行片段)
标签: jquery phpstorm jshint jsdoc