Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.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
如何在AngularJs中链接到单个编辑页面_Angularjs_Firebase - Fatal编程技术网

如何在AngularJs中链接到单个编辑页面

如何在AngularJs中链接到单个编辑页面,angularjs,firebase,Angularjs,Firebase,我正在开发一个基本的AngularJs应用程序来管理客户列表。我目前有一个可以添加和删除客户端的视图。我想创建一个可以编辑数据的视图 我正在尝试创建指向此“单一项目”视图的正确路径。以下是我目前得到的信息: HTML(我想把链接放在哪里) 你真的没问什么问题。但是,由于您的代码缺少将对象分配给细节/客户机视图的部分,因此我将重点介绍这一点 在ClientCtrl中,您只需为当前客户端设置一个新的引用和同步点。比如: app.controller('ClientCtrl', function($s

我正在开发一个基本的AngularJs应用程序来管理客户列表。我目前有一个可以添加和删除客户端的视图。我想创建一个可以编辑数据的视图

我正在尝试创建指向此“单一项目”视图的正确路径。以下是我目前得到的信息:

HTML(我想把链接放在哪里)


你真的没问什么问题。但是,由于您的代码缺少将对象分配给细节/客户机视图的部分,因此我将重点介绍这一点

在ClientCtrl中,您只需为当前客户端设置一个新的引用和同步点。比如:

app.controller('ClientCtrl', function($scope, FBURL, $firebase, $routeParams) {
    $scope.boardId = board.id;
    var ref = new Firebase(FBURL+"clients/"+$routeParams.clientId);

    var client= $firebase(ref).$asObject();
    client.$bindTo($scope, 'client');
});
然后,您可以简单地绑定到client.html中的属性:

<h2><a href='#/board/{{client.$id}}'>{{client.name}}</a></h2>
<article ng-controller='ClientCtrl' ng-model='client'>
    <label>Name: </label><input ng-model='client.name' autofocus></input>
    <label>Age: </label><input ng-model='client.age'></input>
    <button ng-click='removeClient(client.$id)'>Delete</button>
</article>


从我的宠物项目复制和修改的所有代码:。

如果我想使用“asArray”而不是“asObject”,解决方案是什么?我还没有尝试过。但为什么不像我那样做呢?我使用
asArray
asObject
,Firebase在幕后处理数据传输。@LucienDubois调试错误并将您的代码与Frank的代码进行比较,查看文档并查明问题所在。如果到那时你还没有解决这个问题,在这里再问一个问题,我们会帮助你的。但它是从你做腿部运动开始的;我们无法从注释线程中直观地显示您的代码或错误。
app.controller('ClientCtrl', function($scope, FBURL, $firebase, $routeParams) {
    $scope.boardId = board.id;
    var ref = new Firebase(FBURL+"clients/"+$routeParams.clientId);

    var client= $firebase(ref).$asObject();
    client.$bindTo($scope, 'client');
});
<h2><a href='#/board/{{client.$id}}'>{{client.name}}</a></h2>
<article ng-controller='ClientCtrl' ng-model='client'>
    <label>Name: </label><input ng-model='client.name' autofocus></input>
    <label>Age: </label><input ng-model='client.age'></input>
    <button ng-click='removeClient(client.$id)'>Delete</button>
</article>
 <td><a href="#/client/{{client.$id}}">{{client.prenom}}</a></td>