Javascript Visualforce:未捕获类型错误:无法读取属性';工业贸易署';未定义的
我正在对应用程序使用Visualforce远程处理,并定期获取错误: 未捕获的TypeError:无法从VFRemote.js库文件的第84行读取未定义的属性“tid” 该文件由定义远程操作的控制器自动加载到我的页面中 (我知道顶部的注释,但没有将此脚本直接包含在我的页面中。) 我不清楚是什么原因造成的。如果我更新应用程序缓存清单,它将提示刷新页面,然后错误消失 有什么想法吗?Javascript Visualforce:未捕获类型错误:无法读取属性';工业贸易署';未定义的,javascript,html,salesforce,remoting,visualforce,Javascript,Html,Salesforce,Remoting,Visualforce,我正在对应用程序使用Visualforce远程处理,并定期获取错误: 未捕获的TypeError:无法从VFRemote.js库文件的第84行读取未定义的属性“tid” 该文件由定义远程操作的控制器自动加载到我的页面中 (我知道顶部的注释,但没有将此脚本直接包含在我的页面中。) 我不清楚是什么原因造成的。如果我更新应用程序缓存清单,它将提示刷新页面,然后错误消失 有什么想法吗? 这是清单的问题吗?问题是你有视觉力。远程处理。。。方法在静态资源中。要使这行代码正常工作,它必须位于一个顶点页面中。您
这是清单的问题吗?问题是你有视觉力。远程处理。。。方法在静态资源中。要使这行代码正常工作,它必须位于一个顶点页面中。您必须将具有该功能的函数移动到您的visual force页面中,才能使其正常工作。我只想确认@Sven的评论非常有用。我也有同样的
'tid'未定义的问题,这是由于我愚蠢地将未定义的参数传递给远程操作我在使用角度承诺和批处理调用时遇到了这个错误。我需要补充:
{
buffer: false,
escape: true,
timeout: 120000
}
对我所有的电话都进行管理,这样远程经理就不会对我想独立的电话进行批量处理。关键设置是buffer:false
这个问题已经发布很久了,但仍在撰写,以防将来有读者。这里的关键是添加{buffer:false,escape:true,timeout:30000}
这条线路的作用是不允许remote manager批量处理远程处理调用。这之所以有用,是因为有时候我们在JS代码启动时没有数据传递给远程处理函数,导致未定义的对象被传递给远程处理调用,从而导致上述错误
如果不知道在哪里添加它:
scope.getParentId = function() {
EsignCongaSigningUrlRemoting.getEsignUrlParentIdFromObjectId($scope.objectId, 1, function(response, event) {
if(event.status) {
console.log('parentId in response = ',response);
$scope.parentId = response;
$scope.signingUrl($scope.parentId);
}
else {
$scope.parentId = '';
}
},{ buffer: false, escape: true, timeout: 30000 });
};
面对类似的问题,我发现在调用远程操作时我的一个参数为null。在设置该var后,它起作用了。我面临着完全相同的错误消息,您是否能够解决您的问题?我不是100%确定,但我相信@Sven是正确的,如果您的一个远程操作收到一个空参数或可能是一个附加参数,我会看到一些奇怪的行为。如果在单页应用程序中指示有东西正在重置共享状态,则清除应用程序缓存可以解决问题。不,这是不正确的。我引用的文件是Visualforce远程处理库文件。我的JS代码不在静态资源中。