我遇到了似乎是一个错误,当与@typedef
一起使用时,PhpStorm如何解释JSDoc3中的@namespace
。我收到以下警告..
参数类型项不能分配给参数类型项
..下面调用b(item);
时:
(function() {
'use strict';
/**
* @namespace myNamespace
*/
/**
* @typedef {Object} item
* @property {string} key
* @property {string} value
*/
/**
* @function a
* @param {item} item
* @returns {item}
*/
function a(item) {
item.key = 'key';
item.value = 'value';
return item;
}
/**
* @function b
* @memberOf myNamespace
* @param {item} item
* @returns {item}
*/
function b(item) {
item.key = 'key';
item.value = 'value';
return item;
}
/** @type item */
var item = {
key: 'hello',
value: 'world'
};
a(item);
b(item);
})();
由于@memberOf
定义,我只在函数b上收到此警告,当我删除它时警告消失。什么会引起这种想法?