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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/26.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
Backbone.js 主干网的用途';谁的路由器?_Backbone.js_Backbone Routing - Fatal编程技术网

Backbone.js 主干网的用途';谁的路由器?

Backbone.js 主干网的用途';谁的路由器?,backbone.js,backbone-routing,Backbone.js,Backbone Routing,主干网路由器的用途是什么?没有它我们不能做同样的事情吗?使用路由器时,点击链接将更改页面的URL,URL的最后一位将触发一个函数。为什么不在这个链接上分配一个点击事件并触发一个函数呢 我没有专门使用主干网(而是在我的项目中使用iron router),但它的目的是将URL路由到页面。考虑下面的内容:你有50个链接散布在你的网站的源代码中,所有指向/AWESEMETHORE(它服务AWESMESPORE .html)。您已经决定awesomePlace不再那么棒了,并声明有一个moreAwesom

主干网路由器的用途是什么?没有它我们不能做同样的事情吗?使用路由器时,点击链接将更改页面的URL,URL的最后一位将触发一个函数。为什么不在这个链接上分配一个点击事件并触发一个函数呢

我没有专门使用主干网(而是在我的项目中使用iron router),但它的目的是将URL路由到页面。考虑下面的内容:你有50个链接散布在你的网站的源代码中,所有指向/AWESEMETHORE(它服务AWESMESPORE .html)。您已经决定awesomePlace不再那么棒了,并声明有一个moreAwesomePlace.html。你可以进去改变50个链接中的每一个,或者改变一次路线。路由器可以在任何人访问/awesomePlace时提供moreAwesomePlace.html


这只是一个例子。我个人还没有花太多时间研究路由器,但我相信有人能给出比我更好的例子。希望这有助于解释一些事情。

是的,我们可以在没有路由器的情况下实现相同的功能,路由器只是一个辅助工具,就像用于DOM操作的JQuery一样。使用路由器背后的原因在于可伸缩性和灵活性。如果你按照“点击做一些事情”,它不会缩放。在单个页面应用程序中,每次单击都可能有多个处理程序。单击一个项目可能需要更改多个小部件。使用路由器,您可以为相同的点击添加/删除挂钩。在将来,如果你想改变路由器或钩子的实现,你可以自由地这样做,唯一需要确保的是,顺便说一句,这两个保持不变