使用RangeControl更改字体大小时,为什么我的gutenberg块会得到“此块包含意外或无效的内容错误”

时间:2019-12-16 20:25:54

标签: wordpress-gutenberg gutenberg-blocks

所以我一直在尝试根据gutenberg块上的用户输入来设置字体大小。这是设置编辑部分的方式:

titleSize: {
    type: 'string',
    default: null
}

function handleTitleSize(value) {
    props.setAttributes({
        titleSize: value
    })
}

<PanelBody title={'Title Settings'}>
    <p><strong>Select a Title Color:</strong></p>

    <ColorPalette 
        value={titleColor}
        onChange={handleTitleColorChange}
    />

    <RangeControl 
        label="Font Size"
        value={titleSize}
        onChange={handleTitleSize}
        min={12}
        max={60}
    />

    <p><strong>Select Title Alignment:</strong></p>

    <AlignmentToolbar 
        value={titleAlignment}
        onChange={handleTitleAlignment}
    />
</PanelBody>

这在保存方法中:

<div class="hero-block-subtitle" style={
    { 
        color: titleColor,
        textAlign: titleAlignment,
        fontSize: titleSize
    }
}>{title}</div>

其他一切似乎都可以正常工作,但是当使用RangeControl更改字体大小时,该块会在重新加载时给我错误。我将其设置为错误或遗漏了什么吗?这是我看到这种行为的唯一地方,对齐方式和颜色变化似乎正常。

我也尝试过FontSizePicker并看到相同的行为。

将感谢您的帮助。谢谢!

1 个答案:

答案 0 :(得分:0)

我弄清楚了,所以问题是我将字体大小定义为字符串而不是数字。

titleSize: {
    type: 'string',
    default: null
}

应为:

titleSize: {
    type: 'number',
    default: 16
}