【发布时间】:2018-05-23 23:37:56
【问题描述】:
我尝试过使用许多事件,例如 $routeChangeSuccess 和 $viewContentLoaded
window.LOGGING_ON = true;
var loggingUrl = '/payment/op/payment/paymentPageRendering';
window.ajaxRequest = function () {
var activexmodes=["Msxml2.XMLHTTP", "Microsoft.XMLHTTP"]; //activeX versions to check for in IE
if (window.ActiveXObject){ //Test for support for ActiveXObject in IE first (as XMLHttpRequest in IE7 is broken)
for (var i=0; i<activexmodes.length; i++){
try {
return new ActiveXObject(activexmodes[i]);
}
catch(e){
//suppress error
}
}
}
else if (window.XMLHttpRequest) // if Mozilla, Safari etc
return new XMLHttpRequest();
else
return false;
};
window.loggingPay = function(obj,ajxRequestObject,sync){
var logUrl = loggingUrl;
var async = true;
if(!obj){
var payLoad = "isRendered=false&pageUrl="+window.location;
}else{
var payLoad = "isRendered=true";
for(key in obj){
payLoad = payLoad + "&"+key+"="+obj[key];
}
payLoad.isRendered = true;
}
if(sync)
async = false;
ajxRequestObject.open("POST", logUrl , async);
ajxRequestObject.setRequestHeader("Content-type", "application/x-www-form-urlencoded")
ajxRequestObject.send(payLoad);
ajxRequestObject.onreadystatechange=function(res){
if (ajxRequestObject.readyState==4){
if (ajxRequestObject.status==200 || window.location.href.indexOf("http")==-1){
window.loggingObject = JSON.parse(ajxRequestObject.responseText).result;
delete ajxRequestObject;
} else {
console.log("An error has occured making the error request");
}
}
}
}
最后我所做的是,我登录了索引文件并再次登录了页脚,但我想这不是一个好的解决方案,请为此提出一些解决方案。
没有具体错误,但我猜这个解决方案的结果可能有问题
【问题讨论】:
-
真的不清楚你到底想完成什么,或者你想解决什么更高层次的问题
-
我正在做一个页面非常关键的水疗中心,所以我们要确保页面在每个浏览器和每个移动设备上都可以打开,很多时候客户抱怨页面没有打开,所以如何要知道页面没有在客户浏览器上打开,错误是什么等等,所以想知道当特定路线的模板完全加载或其他人使用的任何解决方案时是否会触发任何角度事件。
标签: javascript angularjs web frontend web-frontend