【发布时间】:2018-04-06 01:30:42
【问题描述】:
我有一个简单的 JavaScript 依赖加载器库。定义函数将类定义为具有给定名称的类对象,并要求函数确保在满足依赖项时运行指定的代码。
由于MyClass 和MyClass2 注册到类对象中,我需要使用classes.MyClass 和classes.MyClass2 访问它们。我想对 MyClass 和 MyClass2 发表评论,告诉 PhpStorm 在哪里寻找这些。目前我得到“Unresolved type MyClass”
有没有办法用 JSDoc 正确评论这种情况?
var classes = {},
_loaded = {};
function define(name, callback) {
classes[name] = callback(jQuery);
if (typeof _loaded[name] === 'undefined') {
_loaded[name] = jQuery.Deferred();
}
_loaded[name].resolve();
}
function require(name, callback) {
if (typeof _loaded[name] === 'undefined') {
_loaded[name] = jQuery.Deferred();
}
_loaded[name].done(callback);
}
define('MyClass', function($) {
function MyClass() {}
MyClass.prototype.hello = function() {
$('body').html('Hello')
};
return MyClass;
});
setTimeout(function() {
define('MyClass2', function($) {
function MyClass2() {}
MyClass2.prototype.hello = function() {
$('body').html('Hello MyClass2')
};
return MyClass2;
});
}, 4000);
require('MyClass', function() {
var a = new classes.MyClass();
a.hello();
});
require('MyClass2', function() {
var b = new classes.MyClass2();
b.hello();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
【问题讨论】:
-
@exports classes.MyClass 似乎解决了这个问题,但任何相关建议都将不胜感激。
标签: javascript phpstorm webstorm jsdoc