2
當我試圖使用本指南編寫Swift在dynamoDb表掃描:預計從宣言目標C轉換爲雨燕
http://docs.aws.amazon.com/mobile/sdkforios/developerguide/dynamodb_om.html
但它主要是在客觀C.所寫的,我就轉化爲斯威夫特但是當我這樣做時,我得到了「預期的聲明錯誤」。
這是的OBJ C代碼(這個作品):
AWSDynamoDBObjectMapper *dynamoDBObjectMapper = [AWSDynamoDBObjectMapper defaultDynamoDBObjectMapper];
AWSDynamoDBScanExpression *scanExpression = [AWSDynamoDBScanExpression new];
scanExpression.limit = @10;
[[dynamoDBObjectMapper scan:[Book class]
expression:scanExpression]
continueWithBlock:^id(AWSTask *task) {
if (task.error) {
NSLog(@"The request failed. Error: [%@]", task.error);
}
if (task.exception) {
NSLog(@"The request failed. Exception: [%@]", task.exception);
}
if (task.result) {
AWSDynamoDBPaginatedOutput *paginatedOutput = task.result;
for (Book *book in paginatedOutput.items) {
//Do something with book.
}
}
return nil;
}];
夫特翻譯(擁有預期聲明錯誤線路3:scanExpression.limit = 10):
var dynamoDBObjectMapper: AWSDynamoDBObjectMapper = AWSDynamoDBObjectMapper.defaultDynamoDBObjectMapper()
var scanExpression: AWSDynamoDBScanExpression = AWSDynamoDBScanExpression()
scanExpression.limit = 10
dynamoDBObjectMapper.scan(Book.self, expression: scanExpression).continueWithBlock({(task: AWSTask) -> id in
if task.error {
print("The request failed. Error: [\(task.error)]")
}
if task.exception {
print("The request failed. Exception: [\(task.exception)]")
}
if task.result {
var paginatedOutput: AWSDynamoDBPaginatedOutput = task.result
for book: Book in paginatedOutput.items {
//Do something with book.
//Do something with book.
}
}
return nil
})
感謝你的幫助
您在使用雨燕2.2? –
錯誤實際上顯示'@ 10'?因爲這是一個Objective-C語句...... –
@VladimirNul這是我寫這個問題時的一個錯誤。如圖所示,實際代碼位於第3行。我編輯它。 –