일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- import정리
- eslint에러 자동fix
- JavaScript
- string-width
- 유틸함수
- 이슈번호자동화
- Husky
- 우테코
- git hooks
- vscode
- css instead of js
- prettier 자동화
- 프로젝트
- 클린코드
- importOrder
- eslint 자동화
- webpack
- 자바스크립트
- chromatic
- IDL attributes
- 크로마틱
- 프로젝트 카페인
- 카페인
- CSS
- react
- 클로저
- storybook
- 성능 베이스캠프
- 우아한테크코스
- 협업
- Today
- Total
FEB:)DAIN
Manifest: Line: 1, column: 1, Syntax error 본문
React를 이용해 프로젝트를 하면서 제목과 같은 오류를 맞닥뜨렸다면 index.html 파일로 들어가 manifest 부분을 확인하면 된다.
만약 manifest.json 파일을 사용하지 않는다면 아래와 같은 <link rel="manifest" ...> 코드를 지우면 된다.
// index.html
<link
rel="manifest"
type="application/manifest+json"
href="manifest.json"
crossorigin="use-credentials"
/>
하지만 PWA를 위해 manifest.json을 사용해야 한다면 3가지를 확인해야 한다.
1. 경로/오타 문제
rel="manifest"
href="manifest.json"
✅️ [rel] "manifest"라고 잘 적혀있다.
✅️ [href] 올바른 경로로 설정되어있다. (index.html과 manifest.json이 같은 폴더 안에 있다면, manifest.json 파일 안 start_url이 "/"이라면 위의 경로가 맞다.)
⚠️ index.html, manifest.json은 public 폴더 안에 존재해야 한다.
2. 타입 문제
개발자 도구(F12)를 열고 Network 탭으로 들어가 manifest.json 파일이 오류없이 잘 들고 와져있다면 content-type을 확인해본다. json이나 application/manifest+json이 아닌 text/html이라면 타입 문제이다.
❗️ json 보다는 application/manifest+json이 더 올바른 타입이다.
타입이 text/html이라면 서버측에서 변경이 필요하다. nginx를 사용하고 있다면 location에서 manifest.json 파일에 content-type을 지정해줘야 한다.
location / {
if ($uri = /manifest.json) {
add_header Content-Type application/manifest+json;
}
또는
location ~ \.json {
add_header Content-Type application/manifest+json;
...
}
3. cross-origin 문제
<link rel="manifest" ... crossorigin="use-credentials" />
crossorigin에 "use-credentials"를 넣어야 한다.
위 과정을 거쳤는데도 안된다면 경로를 href="%PUBLIC_URL%/manifest.json" 이렇게 설정해보길 바란다.
dist나 build 파일에 manifest.json이 안 생긴다면 다른 문제(webpack 등)일 수 있으니 다른 파일을 살펴보자.
'코딩 > 트러블 슈팅' 카테고리의 다른 글
[Parsing Error] 초기 세팅할때 Parsing error: Cannot read file '.../tsconfig.json' 에러가 발생했다면 (0) | 2024.04.15 |
---|---|
[스토리북 에러] var stringWidth = require('string-width') Error [ERR_REQUIRE_ESM] (0) | 2023.08.10 |
storybook에서 msw 사용하기 (1) | 2023.07.30 |
storybook에서 svg 오류 개선 (0) | 2023.07.25 |
git hooks(커밋 메시지에 이슈 번호 자동 입력)와 husky 충돌 개선 (0) | 2023.07.20 |