Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/393.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 有哪些backbone.js命名约定?_Javascript_Backbone.js_Conventions - Fatal编程技术网

Javascript 有哪些backbone.js命名约定?

Javascript 有哪些backbone.js命名约定?,javascript,backbone.js,conventions,Javascript,Backbone.js,Conventions,我知道这并不重要,但我只是好奇人们如何命名他们的模型/集合/视图/路由器功能。这一切都取决于模型、集合等所代表的内容以及它们在结构上的使用方式 我通常给我的模型一个通用名,然后用它们的构造函数类型作为后缀 例: 现在,只需将模型传递给animal视图,就可以创建一个新的animal视图,阅读您的代码的其他人可以轻松理解模型所代表的内容 var view = new AnimalView({ model: new Animal({name: 'Tiger'}); 当然,你也可以在你的模型后面加上

我知道这并不重要,但我只是好奇人们如何命名他们的模型/集合/视图/路由器功能。

这一切都取决于模型、集合等所代表的内容以及它们在结构上的使用方式

我通常给我的模型一个通用名,然后用它们的构造函数类型作为后缀

例:

现在,只需将模型传递给animal视图,就可以创建一个新的animal视图,阅读您的代码的其他人可以轻松理解模型所代表的内容

var view = new AnimalView({ model: new Animal({name: 'Tiger'});
当然,你也可以在你的模型后面加上Model这个词,但我认为没有这个词就足够了,因为一个模型代表一个单一的平面对象,其属性不是某种视图或对象集合。

  • 所有收藏名称都以某种方式复数,如人/门/门牌
  • 类以大写开头,实例使用驼峰/下划线
  • 切勿在名称中包含单词model、collection等
  • 将所有内容放在一个名为c、m、r、v的散列中,这有利于迭代
var c.People=Backbone.Collection.extend();
var c.people=新的c.people();
var m.Person=Backbone.Model.extend();
var m.person=新的m.person();

我同意它是可读的,但我不喜欢键入collection(所有这些都是mutch:),那么为什么不使用Animal、Animals和AnimalView呢?我之所以保留视图,主要是因为一个模型/集合可以有多个视图、AnimalListView、AnimalDetailView等,但集合往往是一个大池,如果我有多个相同对象的集合(这是非常常见的),它们通常包含在父模型中,然后它们会得到适当的名称,比如说动物和我的宠物。我不喜欢使用复数形式,因为在模型中添加一个额外的s或者在集合中遗漏一个s是很容易的,这会导致讨厌的虫子。您也可以将集合缩写为Col:PA有关主干命名约定的重要资源可在此处找到:
var view = new AnimalView({ model: new Animal({name: 'Tiger'});