使用主干JS路由Cakephp var HomeView=Backbone.View.extend({ 模板:“主页”, 初始化:函数(){ 这个。render(); }, 渲染:函数(){ this.$el.html(this.template); } }); var AboutView=Backbone.View.extend({ 模板:“关于”, 初始化:函数(){ 这个。render(); }, 渲染:函数(){ this.$el.html(this.template); } }); var AppRouter=Backbone.Router.extend({ 路由:{ “‘回家路线’, “home”:“homeRoute”, '关于':'关于', }, homeRoute:函数(){ var homeView=new homeView(); $(“.content”).html(homeView.el); }, aboutRoute:函数(){ var aboutView=new aboutView(); $(“.content”).html(aboutView.el); } }); var appRouter=新appRouter(); Backbone.history.start(); 如何将上面的代码转换成我在网上看到的手动编码中的backbone.js。
我只是新来的,伙计们,请帮帮我。我现在正在读主干js,有人能帮我解决这个问题吗。如果您有cakephp主干js的经验。。我还想在CRUD cakephp上使用它。只是一个友好的提醒:使用主干JS路由Cakephp var HomeView=Backbone.View.extend({ 模板:“主页”, 初始化:函数(){ 这个。render(); }, 渲染:函数(){ this.$el.html(this.template); } }); var AboutView=Backbone.View.extend({ 模板:“关于”, 初始化:函数(){ 这个。render(); }, 渲染:函数(){ this.$el.html(this.template); } }); var AppRouter=Backbone.Router.extend({ 路由:{ “‘回家路线’, “home”:“homeRoute”, '关于':'关于', }, homeRoute:函数(){ var homeView=new homeView(); $(“.content”).html(homeView.el); }, aboutRoute:函数(){ var aboutView=new aboutView(); $(“.content”).html(aboutView.el); } }); var appRouter=新appRouter(); Backbone.history.start(); 如何将上面的代码转换成我在网上看到的手动编码中的backbone.js。,backbone.js,routing,cakephp-2.0,cakephp-3.0,Backbone.js,Routing,Cakephp 2.0,Cakephp 3.0,我只是新来的,伙计们,请帮帮我。我现在正在读主干js,有人能帮我解决这个问题吗。如果您有cakephp主干js的经验。。我还想在CRUD cakephp上使用它。只是一个友好的提醒:cakephp是一个服务器端库,其职责是将HTML或一些序列化数据(JSON、XML、二进制等)发送到浏览器 backbone.js是一个客户端库,为客户端内容和事件处理提供构建块。CakePHP和backbone.js之间的唯一关系是,CakePHP可能负责交付客户需要的任何脚本和资产。对于CakePHP,您可能无
cakephp
是一个服务器端库,其职责是将HTML或一些序列化数据(JSON、XML、二进制等)发送到浏览器
backbone.js
是一个客户端库,为客户端内容和事件处理提供构建块。CakePHP
和backbone.js
之间的唯一关系是,CakePHP
可能负责交付客户需要的任何脚本和资产。对于CakePHP
,您可能无法了解任何特定于CakePHP的backbone.js
。因此,试着从“客户机”和“服务器”的角度来考虑,而不是从主干网和蛋糕的角度来考虑
现在,几乎每个网站都会有一些链接。当用户单击某个链接时,浏览器会将其视为事件并做出相应的响应
JavaScript客户端可以通过进入浏览器和事件之间来扩展浏览器功能,也就是说,告诉浏览器,“我将处理这个事件,而不是你。”
在backbone.js
中,命令浏览器后退,让backbone
处理某些事件:
- :这是所有浏览器都支持的,并且在URL的“哈希”部分更改时调用;例如,如果单击锚定链接,则会触发事件并调用侦听器。如果侦听器返回的不是
true
,则浏览器将不会像往常一样处理事件,否则,浏览器URL将更改为/path/to/page#某处
- :这是HTML5中的一项新功能,因此旧浏览器不支持它,但在这一点上,它被广泛采用和可用。基本上,这是一个强大的API,它为客户端开发人员提供了一种操作和重写浏览器导航历史的方法——不仅仅是URL的
hash
部分,整个内容——使用语法(参见链接),如history.pushState(未定义,未定义,'not/a/real/path')代码>。相应地,有一个事件处理程序window.onpopstate
,它将在浏览器在历史记录链中向前或向后移动时调用,但是!不是调用history.pushState
或history.replaceState
时。这是一个良好的行为和设计
。你可以两者都用,但我不推荐
最后,请确保**您正在用$(document.ready)(function(){…})包装的JavaScript中设置所有内容代码>。现在你不是。只是一个友好的提醒:CakePHP
是一个服务器端库,其职责是向浏览器发送HTML或一些序列化数据(JSON、XML、二进制等)
backbone.js
是一个客户端库,为客户端内容和事件处理提供构建块。CakePHP
和backbone.js
之间的唯一关系是,CakePHP
可能负责交付客户需要的任何脚本和资产。对于CakePHP
,您可能无法了解任何特定于CakePHP的backbone.js
。因此,试着从“客户机”和“服务器”的角度来考虑,而不是从主干网和蛋糕的角度来考虑
现在,几乎每个网站都会有一些链接。当用户单击某个链接时,浏览器会将其视为事件并做出相应的响应
JavaScript客户端可以通过进入浏览器和事件之间来扩展浏览器功能,也就是说,告诉浏览器,“我将处理这个事件,而不是你。”
在backbone.js
中,命令浏览器后退,让backbone
处理某些事件:
- :这是所有浏览器都支持的,并且在URL的“哈希”部分更改时调用;例如,如果单击锚定链接,则会触发事件并调用侦听器。如果侦听器返回的不是
true
,则浏览器将不会像往常一样处理事件,否则,浏览器URL将更改为/path/to/page#某处
- :这是HTML5中的一项新功能,因此旧浏览器不支持它,但在这一点上,它被广泛采用和可用。基本的
<script>
var HomeView = Backbone.View.extend({
template: '<h1>Home</h1>',
initialize: function () {
this.render();
},
render: function () {
this.$el.html(this.template);
}
});
var AboutView = Backbone.View.extend({
template: '<h1>About</h1>',
initialize: function () {
this.render();
},
render: function () {
this.$el.html(this.template);
}
});
var AppRouter = Backbone.Router.extend({
routes: {
'': 'homeRoute',
'home': 'homeRoute',
'about': 'aboutRoute',
},
homeRoute: function () {
var homeView = new HomeView();
$(".content").html(homeView.el);
},
aboutRoute: function () {
var aboutView = new AboutView();
$(".content").html(aboutView.el);
}
});
var appRouter = new AppRouter();
Backbone.history.start();
</script>
<ul>
<li><?php echo $this->Html->link('Home',array('controller' =>'pages','action' => 'home')); ?></li>
<li><?php echo $this->Html->link('About',array('controller' =>'pages','action' => 'about')); ?></li>
</ul>
How to convert the code above to make backbone.js like this in manual coding I seen in the NET.
<div id="navigation">
<a href="#/home">Home</a>
<a href="#/about">About</a>
</div>
<div class="content">
</div>