diff --git a/lib/utils/indent-common.js b/lib/utils/indent-common.js index e705e26d7..c77000cc0 100644 --- a/lib/utils/indent-common.js +++ b/lib/utils/indent-common.js @@ -984,12 +984,16 @@ module.exports.defineVisitor = function create (context, tokenStore, defaultOpti }, ConditionalExpression (node) { + const prevToken = tokenStore.getTokenBefore(node) const firstToken = tokenStore.getFirstToken(node) const questionToken = tokenStore.getTokenAfter(node.test, isNotRightParen) const consequentToken = tokenStore.getTokenAfter(questionToken) const colonToken = tokenStore.getTokenAfter(node.consequent, isNotRightParen) const alternateToken = tokenStore.getTokenAfter(colonToken) - const isFlat = (node.test.loc.end.line === node.consequent.loc.start.line) + const isFlat = + prevToken && + prevToken.loc.end.line !== node.loc.start.line && + node.test.loc.end.line === node.consequent.loc.start.line if (isFlat) { setOffset([questionToken, consequentToken, colonToken, alternateToken], 0, firstToken) diff --git a/tests/fixtures/script-indent/issue625.vue b/tests/fixtures/script-indent/issue625.vue new file mode 100644 index 000000000..6c205ee83 --- /dev/null +++ b/tests/fixtures/script-indent/issue625.vue @@ -0,0 +1,12 @@ + +