2

我有文件和文件夹。文件夹包含文件。

我从服务器获取的 JSON 如下所示:

folder: {id: 5, name: "my stuff" }
file: {id: 3, name: "my file", folderId: 5}
file: {id: 5, name: "my file 2", folderId: 5}

构建文件夹 - 文件结构的最佳方法是什么?将文件嵌套在文件夹中,例如:

{id: 5, name: "my stuff" files: [
    {id: 3, name: "my file", folderId: 5},
    {id: 5, name: "my file 2", folderId: 5}
]},
{id: 6, name: "other things" files: [
    {id: 1, name: "my file", folderId: 6},
    {id: 2, name: "my file 2", folderId: 6}
]}

或者使用仅返回属于文件夹 id 的文件的过滤器?喜欢:

<li ng-repeat="folder in folders">
    <ul>
        <li ng-repeat="file in files | fileInFolder:folder.id"></li>
    </ul>
</li>

文件可以移动到不同的文件夹!

4

1 回答 1

1

“最好的方式”总是最容易维护的方式。就我个人而言,我喜欢选项 2(过滤器),因为它适合您获得的数据。但是,选项 1(json 结构)是数据的更好表示,IMO。如果您坚持使用该数据结构,那么我想选项 2 将是我的选择。

...但我对您的应用程序结构一无所知。这是持久化到数据库吗?什么时候坚持?瞬间?还是仅在调用保存后?许多因素将影响哪种结构最适合您并且更适合您的特定解决方案。

于 2012-10-31T15:12:14.123 回答