疑问
为什么React组件很少前缀,而vue的不少组件都有前缀?
react
react很少使用前缀,是因为react本身就是jsx模式,实际组件就是一个js执行文件,我们使用组件的饿时候,就是导出一个组件类(跟创建一个临时变量一样),甚至根本不需要子阿姨名称是什么,想叫啥叫啥,组件名称是一个一个变量名称罢了(但实际也不是随便取名的,至少不能取名跟原始的html标签一样),如果同时使用两个ui库,及时相同的组件名称, 由于导入不同也就直接区分开了
vue
vue 组件石墨板的模式,不是可执行的js文件,其名称很关键,允许全局注册组件,也就是全局一个名称使用的是同一个组件,一旦出现重名,直接覆盖,同一个名称很难按需处理,除非改名,局部则是跟react类似,不需要担心,因此一般大型组件为了减少使用上的冲突(跟着大部队习惯来),使用的带前缀的名称的方式(比如同时用antd、element-ui组件库,如经过名称相同,则会相互覆盖),实际上更新是一种安全规范,能够减少不少隐患的出现
扩展
ps:vue这个模式实际上不只是在前端,甚至在移动端,在后端都有着类似的使用场景,能减少很多非必要的问题