目前没有使用虚拟dom,而是在vue文件里头编写组件的,印象中1.0时组件名要求小写和横线分隔,而目前升级成最新版后发现,组件命名成驼峰也能匹配到,这个是什么原因呢?望大神指点~~
目前没有使用虚拟dom,而是在vue文件里头编写组件的,印象中1.0时组件名要求小写和横线分隔,而目前升级成最新版后发现,组件命名成驼峰也能匹配到,这个是什么原因呢?望大神指点~~
vue里有转换方法
var hyphenateRE = /([^-])([A-Z])/g;
var hyphenate = cached(function (str){
return str
.replace(hyphenateRE, '$1-$2')
.replace(hyphenateRE, '$1-$2')
.toLowerCase()
})
cached是生成函数的一个带缓存的版本
function cached(fn) {
var cache = Object.create(null);
return (function cachedFn(str){
var hit = cache[str];
return hit || (cache[str] = fn(str))
})
}
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答5.1k 阅读✓ 已解决
5 回答1.9k 阅读
没看过vuejs的源码。
我个人猜测应该是它的框架中,有代码对驼峰命名做了处理,能自动变成小写和横线分割。