伙计们。
我正在尝试从对象中获取每个单元格的自动完成设置。使用对象的属性名称指向每个对象的数据属性适用于所有其他类型,但不适用于自动完成的“选项”。这是我的设置对象的示例,我将其传递给 Handsontable 初始化:
var settings = {
columns: [
{data: 'base_image', type: 'text', renderer: HsCustomRenderers_image},
{data: 'description', type: 'text', renderer: HsCustomRenderers_text},
{data: 'name', type: 'text', renderer: HsCustomRenderers_text},
{data: 'price', type: 'text', renderer: HsCustomRenderers_number},
{data: 'quantity', type: 'text', renderer: HsCustomRenderers_decimal},
{data: 'sku', type: 'text', renderer: HsCustomRenderers_text},
{data: 'status', type: 'text', renderer: HsCustomRenderers_text},
{type: 'autocomplete', strict: false, source: 'visibility.value.selected')
// {data: 'visibility.value.selected', type: 'autocomplete', strict: false},
],
colHeaders: ['Image', 'Descriptions', 'Name', 'Price', 'Quantity', 'SKU', 'Status', 'Visibility']
// More settings to follow
};
我正在谈论对象的最后一行,特别是这部分:
来源:“visibility.value.selected”
在数据对象中,这是一个数组,但是当传递给 Handontable 时,它会作为字符串传递,这会阻止它工作:(
以下是我在 Angular 指令的链接函数中初始化 HOT 的方法:
var hot = new Handsontable(document.getElementById('datagrid'), {
data: scope.gridData,
rowHeaders: true,
colHeaders: settings.colHeaders,
contextMenu: true,
columns: settings.columns
});
该对象将从 API 返回,当前位于我的 Angular Controller 中。也许我应该解析 Controller 中的属性?
P.S.:很抱歉我的英语不太好,如有必要,我将提供更多详细信息和代码!
最佳答案
是的,在JS端解析它,字符串作为源是行不通的。你可以使用类似的东西
JSON.parse(dataFromServer)
这应该将其解析为一个对象,然后您应该修改该对象以适应sources
格式。
关于javascript - 来自设置对象的 Handsontable 自动完成源(对于每个单元格),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32328200/