使用普通php服务器的BackboneJS

BackboneJS with normal php server

本文关键字:服务器 BackboneJS php      更新时间:2023-09-26

我是backboneJS的新手,所以我在将PHP服务器的数据与主干网同步时遇到了问题,我甚至无法从PHP服务器获得json数据到主干网模型!帮帮我这是我的php代码

$data = array('1'=>array('id'=> 1, 'description'=>'Pick up milk', 'status'=> 'incomplete' ));
echo json_encode($data);

和骨干js代码

<html>
    <head>
        <script src="jquery-1.9.0.min.js" type="text/javascript"></script>
        <script src="underscore-min.js" type="text/javascript"></script>
        <script src="backbone.js" type="text/javascript"></script>
    </head>
    <script type="text/javascript">
         var TodoItem = Backbone.Model.extend({});
         var todoItem = new TodoItem();
         todoItem.url = '/backboneJS/todo.php';
         console.log(todoItem.fetch());
    </script>
    <body>
    </body>
</html>

我无法将json数据从php获取到主干。我的代码怎么了?

<!doctype html>
<html>
<head>
    <script src="http://code.jquery.com/jquery-2.0.3.min.js" type="text/javascript"></script>
    <script src="//cdnjs.cloudflare.com/ajax/libs/underscore.js/1.5.1/underscore-min.js" type="text/javascript"></script>
    <script src="//cdnjs.cloudflare.com/ajax/libs/backbone.js/1.0.0/backbone-min.js" type="text/javascript"></script>
</head>
<body>
</body>
<script type="text/javascript">
    var TodoModel = Backbone.Model.extend({
        urlRoot: '/backboneJS/todo.php',
        initialize: function(){
            // Place init message or else
        }
    });
    var todoItem = new TodoModel();
    todoItem.fetch({
        success: function(todoResult){
            console.log(todoResult);
            console.log(todoItem.get(1));
        }
    });

</script>
</html>

同样坚持设计模式,如果在嵌套函数之外调用todoItem,那么它很可能在执行实际的fetch()之前执行。本地测试。