fbpx

首页 » JS » 正文

Vue Element的el-switch组件使用总结

在做vue的项目时,用的是Element的框架,发现el-switch组件有个问题,原本以为是框架的bug,最后发现是vue的使用问题。

【问题】

参考: https://github.com/ElemeFE/element/issues/11698 

概述:不管el-switch的active-value属性为active-value="100"active-value=100v-model传如的变量为'100'(string)时,按钮皆为开启;v-model传如的变量为100(number)时,按钮皆为关闭。

    猜测可能是el-switch组件对v-model的判断有误,只接收string。故给Element团队提了这个问题,希望无论v-model为'100'或100时,按钮都能为开启。

    后得到的回复是这个地方是让开发者自己灵活使用的(之前也有人提过issue)。

【总结】

active-value="100"active-value=100时,表示v-model须为'100'(string);

当 :active-value="'100'"时,表示v-model须为'100'(string);

当 :active-value="100"或 :active-value=100时,表示v-model须为100(number);

即,根据active-value属性的值的类型判断,当v-bind时,则按照bind的值的来;当只是标签的属性时,默认为string。

本文共 3 个回复

  • ranchodarth 2020/02/27 16:38

    厉害。。。现在格式严格匹配了。 😛

  • 前端小白 2018/07/23 16:49

    但是我用:active-value="1"会报错,用active-value="1"就不报错

    • Kiddo 博主 2018/07/23 18:02

      @ 前端小白 具体报错要查看你的代码才知道哦。 这里只能确定:active-value="1"表示值为1(int);active-value="1"表示值为"1"(string)。不是说一定得用哪个,而是根据开发者的需求灵活运用的。

发表评论

Captcha Code