使用 Svelte 编译时,如何系统地禁用某些不相关的 a11y 警告?
How can I systematically disable certain irrelevant a11y warnings when compiling with Svelte?
这是我在使用缺少 alt 属性的 img 编译组件时收到的警告:
Plugin svelte: A11y: <img> element should have an alt attribute
所有开发人员都会同意 A11y 是一件好事;除了在我的情况下,它只会惹恼屏幕 reader。我正在制作一个游戏引擎,我的对象看起来像这样:
SVG 图像,项目标签。对于屏幕 reader,这将显示为 "Fabric Scrap Fabric Scrap";在这里有一个 alt 属性真的没有意义,但是文档必须提供给我的最好的是我可以像这样弄乱我的代码:
<!-- svelte-ignore a11y-autofocus -->
<input bind:value={name} autofocus>
我真的很想避免这种情况,那么我怎样才能让 Svelte 停止向我显示这个特定错误呢?理想情况下不禁用整个 A11y 模块。
您可以在项目级别禁用警告。
如果您使用汇总,可以通过提供自定义 onwarn
处理程序来抑制警告:
import svelte from 'rollup-plugin-svelte'
export default {
plugins: [
svelte({
// Warnings are normally passed straight to Rollup. You can
// optionally handle them here, for example to squelch
// warnings with a particular code
onwarn: (warning, handler) => {
// e.g. don't warn on a11y-autofocus
if (warning.code === 'a11y-autofocus') return
// let Rollup handle all other warnings normally
handler(warning)
}
})
]
}
这是我在使用缺少 alt 属性的 img 编译组件时收到的警告:
Plugin svelte: A11y: <img> element should have an alt attribute
所有开发人员都会同意 A11y 是一件好事;除了在我的情况下,它只会惹恼屏幕 reader。我正在制作一个游戏引擎,我的对象看起来像这样:
SVG 图像,项目标签。对于屏幕 reader,这将显示为 "Fabric Scrap Fabric Scrap";在这里有一个 alt 属性真的没有意义,但是文档必须提供给我的最好的是我可以像这样弄乱我的代码:
<!-- svelte-ignore a11y-autofocus -->
<input bind:value={name} autofocus>
我真的很想避免这种情况,那么我怎样才能让 Svelte 停止向我显示这个特定错误呢?理想情况下不禁用整个 A11y 模块。
您可以在项目级别禁用警告。
如果您使用汇总,可以通过提供自定义 onwarn
处理程序来抑制警告:
import svelte from 'rollup-plugin-svelte'
export default {
plugins: [
svelte({
// Warnings are normally passed straight to Rollup. You can
// optionally handle them here, for example to squelch
// warnings with a particular code
onwarn: (warning, handler) => {
// e.g. don't warn on a11y-autofocus
if (warning.code === 'a11y-autofocus') return
// let Rollup handle all other warnings normally
handler(warning)
}
})
]
}