简介#(已编辑)
大家好,我正在设置一个 JavaScript 库,该库专为我们设计 AJAX 并连接到多个 PHP,然后连接到数据库。 (可以肯定这就是您所说的 API)。不过,为了让我的团队更轻松,我想设置某种初始化对象,例如 jQuery 中的 $。有人可以帮我指出正确的数据类型吗?
例子
// Pull new user data from fields
var username = $.("#usernamefield").val();
var password = $.("#userpassfield").val();
// Send data to library through
API.AddUser(username, password);
// Sorry for any syntax errors, this is just example code
可能的解决方案
我确实考虑过使用类系统,但我做了一些研究,似乎可能有更好的方法。有人可以帮助解释 jQuery 如何设置他们的库吗?
澄清
有些人问我为什么不直接使用 jQuery。好吧,实际上,我是。我正在使用 jQuery 并构建这个单独的库以使用 PHP 上传信息。他们两个是 Apples 和 Oranges,但我确实想要一个像 jQueries "$"这样的初始化程序 - 有人可以解释一下他们是怎么做到的吗?
这里是你应该怎么做:
在可以调用 API.js 的 JS 模板中,您将拥有以下内容:
;(function($){
/* ========================================================
/* Global variables */
/* =======================================================*/
var api = null;
/* ========================================================
/* Ajax calls */
/* =======================================================*/
var API = function(args)
{
// Api methods
this.AddUser = function (username, password)
{
//To do Ajax call
}
this.DeleteUser = function(id)
{
//To do Ajax call
}
// ... More api methods
};
/* ========================================================
/* Main function */
/* =======================================================*/
jQuery.fn.API = function( args )
{
api = new API(args);
return api;
};
})(jQuery);
然后当您需要进行 Ajax 调用时,您只需要使用任何必需的参数初始化一个 API 对象,如下所示:
$(function() {
//Note: you can pass global arguments.
var API = $().API();
//You can then make your api calls with required values
// Pull new user data from fields
var username = $("#usernamefield").val();
var password = $("#userpassfield").val();
// Send data to library through
API.AddUser(username, password);
});