繁体   English   中英

Angular.js:处理项目数据中外键的最佳方法

[英]Angularjs: Best way to deal with foreign keys in items data

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

我从服务器获取的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>

文件可以移动到其他文件夹!

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM