$bus,$router中的这个$是啥意思?

对于这个$号感觉疑惑,有什么特殊含义吗?

阅读 2.1k
3 个回答
为了避免和其他变量重名,lib 中全局变量的命名一般都是 _ 或者 $ 开头。

其实就是一个字符串,this.$bus 和 你自己起的 this.myBus 其实是一样的。对于JS来说都是一个变量名。
只不过对于我们来说 $_ 开头的变量会认为是特殊的。_ 一般会认为是内部的局部变量,$ 会被认为是全局变量。

$ 就是一个合法的标识符字符,所以 $bus_bus 一样都是正常的标识符,可用作属性名。这里就是表示它比较特殊,不是 Vue 自带的属性,而是注入的属性。

如果是在不允许 $ 用于标识符的语言中,这种作特殊标记的变量常常会起名为 _bus 或者 __bus

没什么特殊含义,最初的时候是因为各种符号在一定场合都有特定的意义,$ 符号是其中用的最少的,所以拿此符号作为默认变量名,像是jQuery。
后来只是延续了这样的习惯,加个少用的 $ 符号避免容易重名。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏