有 -
default.html中
<html>
<head>
</head>
<body>
<script src="jquery-2.1.0.min.js"></script>
<script src="json2.min.js"></script>
<script src="underscore.js"></script>
<script src="backbone.js"></script>
<script>
Router = Backbone.Router.extend({
routers: {
"*action" : "func"
},
func: function (action) {
console.log(action);
}
});
new Router();
Backbone.history.start();
</script>
</body>
</html>
根据routers
格式,必须在console
之后打印到#
后缀。
例如,对于路径default.html#hello
,它必须在hello
上打印console
,但实际上并未打印任何内容。
这里有什么问题?
答案 0 :(得分:3)
您的路线需要在routes
键中定义,而不是routers
:
var Router = Backbone.Router.extend({
routes: {
"*action" : "func"
},
func: function (action) {
console.log(action);
}
});
这是一个有效的jsfiddle: http://jsfiddle.net/somethingkindawierd/WJ5V7/