![](/img/trans.png)
[英]react-redux-firebase (firestoreConnect) Comparison Queries not working
[英]Unusual json syntax in React-Redux-Firebase documentation. Is it valid?
React-Redux-Firebase的文檔提供了以下示例代碼。
import { compose } from 'redux'
import { connect } from 'react-redux'
import { firebaseConnect, populate } from 'react-redux-firebase'
const populates = [
{ child: 'owner', root: 'users' } // replace owner with user object
]
const enhance = compose(
firebaseConnect([
// passing populates parameter also creates all necessary child queries
{ path: 'todos', populates }
]),
connect(({ firebase }) => ({
// populate original from data within separate paths redux
todos: populate(firebase, 'todos', populates),
// firebase.ordered.todos or firebase.data.todos for unpopulated todos
}))
)
export default enhance(SomeComponent)
我特別關注以下內容:
{ path: 'todos', populates }
我以前從未見過這種語法。 這是錯誤嗎? 還是有效的語法? 如果有效,請說明其含義以及工作原理。
這是新的ES6語法。 基本上,如果populates
為'abc'
(僅作為示例),則
{ path: 'todos', populates }
手段
{ path: 'todos', populates: 'abc' }
但是, populates
可以是可以在對象內部使用的任何有效值。
因此,在您的特定情況下,它將轉換為:
{
path: 'todos',
populates: [{
child: 'owner',
root: 'users'
}]
}
參考: https : //ariya.io/2013/02/es6-and-object-literal-property-value-shorthand
是的,這是es6中的有效語法
{ path: 'todos', populates }
基本上,這就是
{
path: 'todos',
populates: [
{ child: 'owner', root: 'users' }
]
}
請注意, populates
是正在使用的變量,並且將變量名稱寫入對象,將名稱視為鍵,將值視為變量持有的任何值。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.