“在Forge Viewer 6. *版中,onSelectionEvent的onSelectionEvent方法在移动设备上打开网站时不会返回属性信息,但在台式机上可以正常工作。”在移动设备上,不会生成名为propDbLoader的属性,该属性是负责将数据传递给查看器的相同方法在2.7。*版中对于台式机和移动版均适用,但不适用于6. *版,viewer.getProperties()返回undefined,而调试发现在以下位置打开网站移动设备无法在Model.prototype.getPropertyDb = function()下找到属性propDbLoader {
var data = this.g enter code here
etData();
返回数据&& data.propDbLoader;
};说data.propDbLoader未定义。
PanelObjectExtension.prototype.onSelectionEvent = function (event) {
var viewer = this.viewerApp;
var currSelection = this.viewer.getSelection();
this.viewer.getProperties(currSelection[0], function (objProp) {
if (objProp) {
var Prop = objProp.properties[2];
if (Prop.displayName == 'Test' && Prop.displayValue == 'Test') {
$.ajax({
type: "POST",
url:document.location.origin+'@Url.Action("TestAction", "Test")',
contentType: "application/json; charset=utf-8",
data: '{Test: "' + objProp["Test"] + '" }',
dataType: "json",
cache: false,
headers: { "cache-control": "no-cache" },
success: function (data) {
$('#Test).val(data.Test);
},
error: function (xhr, status, error) {
var errorMessage = xhr.status + ': ' + xhr.statusText
Console.log(errorMessage);
}
});
}
};
}, function (xhr, status, error) {
var errorMessage = xhr.status + ': ' + xhr.statusText
Console.log(errorMessage);
alert(errorMessage);
});
};
viewer.getProperties()应该在Forge Viewer版本6 *中返回属性信息。
答案 0 :(得分:0)
很遗憾,我无法在iOS Safari上重现Viewer v6.6的问题-请参见实时示例here:
viewer.getProperties(4, sb=>alert(JSON.stringify(sb))