// 全局 API 定义
apiDomain = '//example.com/'
api = {
user: {
regist: apiDomain + 'user/regist',
login: apiDomain + 'user/login',
validateEmail: apiDomain + 'user/validateEmail'
}
}
感觉这种重复性很高的,有什么方法可以简写这种定义 API 嘛?
倒是推荐你把api相关的封装在一个对象里,减少全局变量,给你推荐一种思路吧,也是我一直使用的方式,代码很简单
var API = {
domain: function() {
return 'domain.com';
},
getUrl: function(url) {
return this.domain() + url;
},
user: function() {
return {
login: this.getUrl('/login')
};
}
};
console.log(API.user().login);
你可以定义一个函数来处理嘛。
// 全局 API 定义
var apiDomain = '//example.com/'
function finalAPI( dest ) {
return apiDomain + dest;
}
这样,你的API就可以向下面这样定义了:
api = {
user: {
regist: 'user/regist',
login: 'user/login',
validateEmail: 'user/validateEmail'
}
}
每次使用的时候,只需要传入对应的API就可以了。
ajax的时候不是要填写url吗?你写一个公用的ajax,然后在ajax的时候域名+url即可