Javascript 在ajax响应中将变量存储为全局变量并用于发送其他ajax请求?
我得到了ajax的回应Javascript 在ajax响应中将变量存储为全局变量并用于发送其他ajax请求?,javascript,jquery,vue.js,vuejs2,vue-component,Javascript,Jquery,Vue.js,Vuejs2,Vue Component,我得到了ajax的回应 { pid: 6, status: true } 我需要存储pid,并在下一个ajaxpost请求中传递它 我目前的vue js如下 submitBox = new Vue({ el: "#submitBox", data: { name: '', gstno: '', about: '', pid: '', }, methods: { handelSubmit: function(e) { var v
{ pid: 6, status: true }
我需要存储pid
,并在下一个ajaxpost请求中传递它
我目前的vue js如下
submitBox = new Vue({
el: "#submitBox",
data: {
name: '',
gstno: '',
about: '',
pid: '',
},
methods: {
handelSubmit: function(e) {
var vm = this;
data = {};
data['name'] = this.name;
data['gstno'] = this.gstno;
data['about'] = this.about;
$.ajax({
url: 'alpha/add/post/',
data: data,
type: "POST",
dataType: 'json',
success: function(e) {
if (e.status) {
alert(" Success")
} else {
vm.response = e;
alert(" Failed")
}
}
});
return false;
}
},
});
我需要将
pid
存储为一个全局变量,并将其用于所有ajax请求。如何实现这一点?小东西,如果您有一个小应用程序,并且没有太多的架构,或者js
驻留在该页面上,那么您只能使用全局变量
仅为这件小事使用vuex
是不可取的(如果他已经在使用它就好了)
当您返回ajax响应时,您可以全局设置id
if (e.status) {
window._postPid = e.pid; // assume `e` is response and e.pid is 6
}
else {
// according to your need.
// this is optional window._postPid = null;
}
现在,您可以在任何地方使用它
console.log(window._postPid); // 6
这不是大型应用程序的首选。因为我们不想破坏全局名称空间或冲突变量
但它会做你想做的 当您说“存储”时,您的意思是将结果存储在
Vue
之外的某个地方吗?Vue本身内部没有?如果能在另一个vue中使用它会更好…哦。。。您最好使用Vue组件
和Vuex
然后,如果您要存储的数据将仅由其他Vue
使用。