使用angular-xeditable编辑数组

nei*_*ker 9 javascript angularjs angularjs-directive angular-xeditable

我使用ngResource从我的api中提取一些对象,然后将它们显示在表格中.好吧..问题变成了当我尝试使用angular-xeditable使'tags'属性可编辑但被视为字符串并且在angular-xeditable上没有类似"ngList"的东西.我能想到的唯一解决方案是在我的服务上将"tags"属性序列化为"tagsString",并在调用$ save()后将其反序列化..有一个更优雅的解决方案吗?

宾语:

{
    "id": "yP8",
    "uploadDate": "2012-10-03T12:52:59-0300",
    "statusChangeDate": "2012-10-03T12:52:59-0300",
    "status": 0,
    "type": 1,
    "mimeType": "JPEG",
    "title": "title-36868",
    "tags": [
        'some-tag',
        'fancy-tag'
    ],
    "language": "en",
    "interactions": {
        "likes": 12371,
        "dislikes": 15,
        "comments": 81
    },
    "published": true
}
Run Code Online (Sandbox Code Playgroud)

控制器:

app.controller( 'ContentsCtrl', function CommentsCtrl( $scope, Contents ) {
    $scope.contents = Contents.query();
});
Run Code Online (Sandbox Code Playgroud)

模板:

<tr ng:repeat="content in contents.content">
    <td>{{content.id}}</td>
    <td ng:click="content.images.showFull=!content.images.showFull">
        <img src="{{content.images.thumbnail.url}}" ng:show="!content.images.showFull">
        <img src="{{content.images.medium.url}}" ng:show="content.images.showFull">
    </td>
    <td>{{content.status}}</td>
    <td>
        <span editable-text="content.title" e-required>{{content.title}}</span>
    </td>
    <td>
        <span editable-text="content.tags">{{content.tags}}</span>
    </td>
    <td>{{content.language}}</td>
</tr>
Run Code Online (Sandbox Code Playgroud)

编辑:

演示(由SebastianGärtner撰写):http://plnkr.co/edit/ttPNgHXUZKmaJZ9IuB2N? p =preview

小智 2

用另一个指令解决它怎么样?不适用于 xeditable。

像: http: //decipherinc.github.io/angular-tags/

您确实想让标签可编辑吗?您想要什么输入机制?

标签的另一个 ng-repeat 怎么样,使它们每个都成为一个输入字段,并且可能是添加和删除标签的机制。