React Native sectionHeaderHasChanged: (s1, s2) => s1 !== s2,
React Native sectionHeaderHasChanged: (s1, s2) => s1 !== s2,
文档中没有关于此的任何内容,所以谁能告诉我这到底是什么意思:
sectionHeaderHasChanged: (s1, s2) => s1 !== s2,
或者这个:
sectionHeaderHasChanged: (h1, h2) => h1 !== h2,
你在这里正常看到:
var ds = new ListView.DataSource({
rowHasChanged: (r1, r2) => r1 !== r2,
sectionHeaderHasChanged: (h1, h2) => h1 !== h2,
});
虽然我们正在做,但不太确定关于 rowHasChanged does/means 的第一行是什么。
这里有两个概念,Arrow 函数和 sectionHeaderHasChanged 和 rowHasChanged 属性。
箭头函数:
这是 ecmascript 6 中的一项新功能,它允许快速创建小型匿名函数,这些函数保持在周围代码的上下文中 enter code here
例如:
语法很简单:(arguments) => {function body}
例如以下两个会将相同的函数回调分配给 onclick:
btn.onclick = (event) => {console.log(event)}
btn.onclick = function(event){console.log(event)}
sectionHeaderHasChanged && rowHasChanged:
许多功能 react-native 并没有像我希望的那样得到很好的记录,但现在还处于早期阶段,我能说的最好,
Only re-render changed rows - the rowHasChanged function provided to
the data source tells the ListView if it needs to re-render a row
because the source data has changed - see ListViewDataSource for more
details.
数据源对象允许两次回调是徒劳的:
1. rowHasChanged
2. sectionHeaderHasChanged
两者检查先前呈现的 row/sectionHeader(分别)是否已更改,并且应在用户向上和向下滚动列表时呈现。
对于上面的代码片段,您提供了数据源回调 ARROW 函数,每个函数接受两个参数:
- 呈现的 row/sectionHeader 和
- 当前row/sectionHeader
函数 return 如果 row/sectionHeader 未更改且不应为 re-rendered 则为 false,如果已更改且应为 re-rendered 则为 true。
注意: 函数体中只有一个语句的 ARROW 函数可以省略大括号和 return 运算符,它们将自动 return 结果他们的一种表达方式。
例如(a, b) => a + b
与 (a, b) => {return a + b}
和 function(a, b){return a + b}
相同
文档中没有关于此的任何内容,所以谁能告诉我这到底是什么意思:
sectionHeaderHasChanged: (s1, s2) => s1 !== s2,
或者这个:
sectionHeaderHasChanged: (h1, h2) => h1 !== h2,
你在这里正常看到:
var ds = new ListView.DataSource({
rowHasChanged: (r1, r2) => r1 !== r2,
sectionHeaderHasChanged: (h1, h2) => h1 !== h2,
});
虽然我们正在做,但不太确定关于 rowHasChanged does/means 的第一行是什么。
这里有两个概念,Arrow 函数和 sectionHeaderHasChanged 和 rowHasChanged 属性。
箭头函数:
这是 ecmascript 6 中的一项新功能,它允许快速创建小型匿名函数,这些函数保持在周围代码的上下文中 enter code here
例如:
语法很简单:(arguments) => {function body}
例如以下两个会将相同的函数回调分配给 onclick:
btn.onclick = (event) => {console.log(event)}
btn.onclick = function(event){console.log(event)}
sectionHeaderHasChanged && rowHasChanged: 许多功能 react-native 并没有像我希望的那样得到很好的记录,但现在还处于早期阶段,我能说的最好,
Only re-render changed rows - the rowHasChanged function provided to the data source tells the ListView if it needs to re-render a row because the source data has changed - see ListViewDataSource for more details.
数据源对象允许两次回调是徒劳的: 1. rowHasChanged 2. sectionHeaderHasChanged 两者检查先前呈现的 row/sectionHeader(分别)是否已更改,并且应在用户向上和向下滚动列表时呈现。
对于上面的代码片段,您提供了数据源回调 ARROW 函数,每个函数接受两个参数:
- 呈现的 row/sectionHeader 和
- 当前row/sectionHeader 函数 return 如果 row/sectionHeader 未更改且不应为 re-rendered 则为 false,如果已更改且应为 re-rendered 则为 true。
注意: 函数体中只有一个语句的 ARROW 函数可以省略大括号和 return 运算符,它们将自动 return 结果他们的一种表达方式。
例如(a, b) => a + b
与 (a, b) => {return a + b}
和 function(a, b){return a + b}