Xcode报错:Insufficient indentation of next 11 lines in multi-line string literal
Xcode报错:Insufficient indentation of next 11 lines in multi-line string literal

Xcode报错:Insufficient indentation of next 11 lines in multi-line string literal

在使用多行字符串文字代码的过程中,下面的代码报错:

var description: String {
    let friendDescriptions = friends?.map { "\($0.id): \($0.name)" } ?? []
        return """
        Friendface:
        id: \(id)
        name: \(name)
        age: \(age)
            """
}

报错内容为:

Insufficient indentation of next 11 lines in multi-line string literal

报错的原因为:在 Swift 中,多行字符串文字(multi-line string literals)使用三对双引号 (“””) 来包裹内容。每一行的缩进需要与字符串开始部分的缩进保持一致。如果缩进不一致,编译器会报错,比如 “Insufficient indentation”。

上述代码中,description 属性的多行字符串缩进不正确,主要问题是 “”” 的起始位置和内容行的缩进不一致。

解决方案:

需要保证 “”” 的位置和内容行的缩进一致:

var description: String {
    let friendDescriptions = friends?.map { "\($0.id): \($0.name)" } ?? []
        return """
        Friendface:
        id: \(id)
        name: \(name)
        age: \(age)
        """
}

注意

1、所有内容行都对齐到了 “”” 的缩进位置。

2、结尾的 “”” 和最后一行内容在同一个缩进层级。

如果您认为这篇文章给您带来了帮助,您可以在此通过支付宝或者微信打赏网站开放者。

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注