问题

HTML 特性是不区分大小写的。所以,当使用的不是字符串模板时,camelCase (驼峰式命名) 的 prop 需要转换为相对应的 kebab-case (短横线分隔式命名):

字符串模板

字符串模板:本来在服务器,script标签里,js的字符串里,或者组件中的template,本来不参与页面渲染的一串字符,可以不在乎html结构和标签命名,只在乎最后根据模板生成内容的结构和命名正确即可

非字符串模板(DOM模板)

DOM模板:dom模板就是原先就写在页面上的,能被浏览器识别的 html 结构,会在一加载就被浏览器渲染,所以要遵循 html 结构和标签命名,不然是不会被浏览器解析的,也就获取不到内容了,接着js获取 dom 节点的内容,就形成了 dom 模板。(单文件里用指定的模板,换句话说,写在 html 中的就是非字符串模板。)

字符串模板和非字符串模板的区别

这两者其实区别就在于第一次获取到的方式不同,dom 模板参与浏览器解析,而字符串模板不参与,所以 dom 写起来要规范,而字符串模板不用。