作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我开始将 VueJS 与 Firebase(和 VueFire)一起使用,但我开始为如何构建数据而苦恼。
我的情况很简单。
我有一个供应商列表和一个产品列表。
一个产品只能链接到一个供应商,一个供应商可以有多个产品。
我有不同的看法:
对于第一个和第二个 View ,我认为以下结构没有问题
products
- productKey1
- name : Product1
- productKey2
- name : Product2
supplier-products:
- supplierKey1
- productKey1
- name : Product1
- supplierKey2
- productKey2
- name : Product2
supplier:
- supplierKey1
- name : Supplier1
- supplierKey2
- name : Supplier2
我可以轻松地显示“/products”中所有产品的列表以及“supplier-products/supplierKey”中每个供应商的列表
但是包含产品详细信息 + 供应商详细信息的 View 呢?
最好的方法是什么?
感谢您的帮助。
最佳答案
我在我的应用程序中遇到了类似的问题,我在业务和位置之间有类似的关系。我发现最好的解决方案是拥有一个用于企业的商店、一个用于地点的商店,以及一个用于它们之间连接的商店。
在你的情况下:
products: [
{ productKey: 1, name: 'Product1' },
{ productKey: 2, name: 'Product2' },
],
suppliers: [
{ supplierKey: 1, name: 'Supplier1' },
{ supplierKey: 2, name: 'Supplier2' },
],
supplierProducts: [
{ productKey: 1, supplierKey: 1 },
{ productKey: 2, supplierKey: 2 },
]
现在,您可以通过当前选择的 supplierKey
或当前选择的 productKey
轻松过滤 supplierProducts
列表,然后使用用相反的键为您的 View 拉出正确的列表。
关于firebase - VueJs + 火力地堡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45461681/
我是一名优秀的程序员,十分优秀!