no_adjacent_strings_in_list 진단: 리스트 리터럴에서 문자열을 붙여 쓰지 마세요

no_adjacent_strings_in_list 진단: 리스트 리터럴에서 문자열을 붙여 쓰지 마세요

리스트 리터럴 안에서 두 문자열 리터럴이 서로 인접해 있을 때 Dart 분석기가 알려주는 no_adjacent_strings_in_list lint 규칙에 대한 설명이에요. Dart에서는 인접한 문자열이 하나로 합쳐지는데, 각각을 리스트의 별도 요소로 쓰려던 의도였다면 실수일 수 있어요.

출처: no_adjacent_strings_in_list

본문

설명

리스트 리터럴 안에서 두 문자열 리터럴이 서로 인접해 있을 때 분석기가 이 진단을 만들어요. Dart에서 인접한 문자열은 합쳐져서 하나의 문자열이 되지만, 각 문자열이 리스트의 별도 요소가 되길 의도했을 수도 있어요.

예시

다음 코드는 문자열 'a''b'가 서로 인접해 있어서 이 진단을 만들어요.

List<String> list = [
  'a'
  'b',
  'c',
];

흔한 해결 방법

두 문자열이 리스트의 별도 요소로 의도된 것이라면, 그 사이에 쉼표를 추가해요.

List<String> list = ['a', 'b', 'c'];

두 문자열이 하나의 합쳐진 문자열로 의도된 것이라면, 직접 문자열을 병합하거나,

List<String> list = ['ab', 'c'];

+ 연산자로 문자열을 연결하면 돼요.

List<String> list = ['a' + 'b', 'c'];

더 알아보기