我可以修改jQuery库吗?

时间:2018-09-17 15:17:33

标签: jquery ajax post npm

我想修改jQuery.post函数来处理CORS问题。

因为jQuery.ajax需要我写很多代码

$.ajax({
    url:'',
    data:null,
    type:'post',
    xhrFields:{withCredentials:true},
    crossDomain:true,
    success:function(res){}
});

很无聊。 因此,我想修改jQuery.post以添加一些属性。 所以我在ajax.js中添加了一些代码。构建完之后,似乎没有任何变化。
节点中有东西吗?

2 个答案:

答案 0 :(得分:1)

为什么不像下面这样编写自己的包装器?

$.myAjax = function(o) {
   var opt = $.extend({ default options here }, o);

   return $.ajax(opt);
}

这只是简单地定义了一个用于调用$.ajax的实用程序,并定义了一组通常使用的默认值。 myAjax包装器可以在任何对象上定义,而不必在jQuery对象上定义为自定义小部件。

我自己不会修改库文件-这样您就可以通过使用的任何软件包管理软件继续接收更新,而不必担心会覆盖您自定义的任何内容。

答案 1 :(得分:0)

您可以在不接收ajax调用本身的ajax调用的服务器端控制CORS。

但是,如果您愿意的话,可以随意修改$ .ajax:

require 'minitest/autorun'

def pass_input_to_file(input)
  # complete code here
end

class Test < Minitest::Test
  def test_file
    assert_equal pass_input_to_file(2), 4
  end
end