gpt4 book ai didi

javascript - 为什么我的类在运行时未定义。 Javascript 模块模式

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:46:18 28 4
gpt4 key购买 nike

当我运行我的应用程序时,我得到:“Uncaught TypeError: Cannot read property 'init' of undefined”文档 reasdy 函数中的警报运行,所以我知道此时已加载 jQuery。但我不知道为什么 Task 是未定义的。

这是在 MVC5 应用程序中,并运行 jQuery 1.10.2

请帮忙,jsFiddle 工作正常,JsHint 没有显示错误。

    var Task = (function () {

var initialize = function () {
console.log($);
bindEvents();
};
var postFilter = function () {
console.log("clicked");
var postData = {
UserID: $('#user_select').val,
TaskTypeID: $('#taskTypeSelect').val,
TaskStatusID: $('#status_select').val,
PriorityID: $('#priority_select').val
};

$.ajax({
url: "/Tasks/_AllTaskView",
data: postData,
success: function (response) {
$('#results').html(response);
}

});
};

var bindEvents = function () {
$('#submit_filter').on('click', postFilter);
};

return
{
init : initialize

};

})();

$(document).ready(function () {
alert()
Task.init();
});

最佳答案

return 的花括号与 return 放在同一行。

代替:

return
{
init : initialize

};

这样做:

return {
init : initialize
};

JavaScript 具有自动分号插入功能,它会在 return 语句到达大括号之前自动结束它。

关于javascript - 为什么我的类在运行时未定义。 Javascript 模块模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27424942/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com