我试图在平面列表上实现scrollToIndex函数,以便在呈现时滚动到特定项.我遇到的问题是flatlist呈现的项目有minHeight
.问题是,平面列表需要实现一个函数来计算每个元素的偏移量.我想不出一个通往pre-render
平面列表的方法,并获得其中每个项目的高度.正如您所看到的,我只是为偏移量添加一个静态数字,这不是我需要的.
<FlatList
data={data}
renderItem={this.renderItem}
getItemLayout={(dat, index) => {
let offset = 0;
for (let i = 0; i < index; i++) {
if (data[i].headerText) {
offset += 33;
} else {
offset += 80;
}
}
return { length: 0, offset, index }
}
}
ref={(ref) => { this.flatListRef = ref; }}
/>
Run Code Online (Sandbox Code Playgroud)
我刚刚在我的项目根目录中运行了npm install --save sequelize pg pg-hstore,现在我无法调用sequelize init.我收到错误:-bash:sequelize:command not found.我究竟做错了什么?
使用时react-native-sqlite-storage
,我尝试调用SQLite.deleteDatabase({ name }, resolve, reject);
但收到错误database cannot be closed while a transaction is in progress
。我一直不知道如何处理这个问题。
我试图使用延迟功能,但出现错误,即延迟不是功能。
直接来自文档:
import { race, call, put, delay } from 'redux-saga/effects'
function* fetchPostsWithTimeout() {
const {posts, timeout} = yield race({
posts: call(fetchApi, '/posts'),
timeout: delay(1000)
})
if (posts)
yield put({type: 'POSTS_RECEIVED', posts})
else
yield put({type: 'TIMEOUT_ERROR'})
}
Run Code Online (Sandbox Code Playgroud)
现在,我一直在使用history.replace,它永远不会在历史记录堆栈中推送任何内容。我这样做是因为,如果我按下然后注销,则我的应用程序允许使用浏览器的后退箭头返回上一条路线,但我不希望这样做。我该如何操作历史记录,以便在按下注销时,历史记录堆栈上没有任何内容可返回。
我正在有条件地更新 dynamoDB 记录(仅当该记录的属性之一具有特定值时)。我想取回记录,无论它是否更新成功(条件是否满足)。
docClient.update(params, function(err, data) {
if (err) {
console.error(
"Unable to read item. Error JSON:",
JSON.stringify(err, null, 2)
);
callback(null, true);
} else {
console.log("GetItem succeeded:", JSON.stringify(data, null, 2));
callback(null, true);
}
});
Run Code Online (Sandbox Code Playgroud)
我想从包含很多阶段的 yml 文件在 gitlab 中运行单个阶段。我不想将其添加到每个阶段以避免运行所有阶段。
except:
refs:
- schedules
Run Code Online (Sandbox Code Playgroud) react-native ×3
gitlab-ci ×1
javascript ×1
npm ×1
reactjs ×1
redux-saga ×1
sequelize.js ×1
sqlite ×1