(该问题目前只出现在vue2 + element-ui 多版本中)
方法一、
1.在项目中定义一个js文件,复制以下代码完成注册。
export default {
bind(el, binding) {
// 获取节点
let ariaEls = el.querySelectorAll(".el-radio__original");
ariaEls.forEach((item) => {
item.removeAttribute("aria-hidden");
});
}
};
2.在vue的main.js文件中全局注册这个js文件。
//全局注册
import removeAria from "./moudle/removeAria";
Vue.directive("removeAria", removeAria);
3.使用,在后续的el-radio组件标签中加入v-removeAria代码。
<el-radio-group v-model="radio" v-removeAria>
<el-radio :label="3">备选项</el-radio>
<el-radio :label="6">备选项</el-radio>
<el-radio :label="9">备选项</el-radio>
</el-radio-group>
方法二、
<el-radio-group v-model="radio">
<el-radio :label="3">备选项</el-radio>
<el-radio :label="6">备选项</el-radio>
<el-radio :label="9">备选项</el-radio>
</el-radio-group>
mounted() {
this.$refs.radio.$children.forEach((item) => {
item.$refs.radio.removeAttribute("aria-hidden");
});
}