node.js에 json이 필요합니까?
JavaScript 소스 파일과 동일한 디렉토리에있는 JavaScript 코드에 몇 개의 JSON 파일을 포함하고 싶습니다.
다른 JavaScript 파일을 포함하고 싶다면 간단히 사용할 수 있습니다 require
. 이제 JSON을 사용 readFileSync
하고 __dirname
있는데 JSON을 사용하는 것이 추한 방법이라고 생각합니다.
JSON 파일을로드 할 수있는 require와 비슷한 것이 있습니까?
v0.5.x 노드부터 js 파일이 필요한 것처럼 JSON이 필요할 수 있습니다.
var someObject = require('./somefile.json')
ES6에서 :
import someObject from ('./somefile.json')
JSON 파일에는 명시 적 내보내기 문이 필요하지 않습니다. Javascript 파일로 사용하기 위해 내보낼 필요는 없습니다.
따라서 require
유효한 JSON 문서 에만 사용할 수 있습니다 .
data.json
{
"name": "Freddie Mercury"
}
main.js
var obj = require('data.json');
console.log(obj.name);
//Freddie Mercury
아니요. readFile
또는 readFileSync
시작시에만 사용 합니다.
또는 같은 기존 라이브러리를 사용하십시오.
또는 json 파일 대신 js 파일에 구성을 작성하십시오.
module.exports = {
// json
}
가장 일반적인 두 가지
첫 번째 방법 :
let jsonData = require('./JsonFile.json')
let jsonData = require('./JsonFile')
// .json을 생략하면 작동합니다.
또는
import jsonData from ('./JsonFile.json')
두 번째 방법 :
1) 동 기적으로
const fs = require('fs')
let jsonData = JSON.parse(fs.readFileSync('JsonFile.json', 'utf-8'))
2) 비동기 적으로
const fs = require('fs')
let jsonData = {}
fs.readFile('JsonFile.json', 'utf-8', (err, data) => {
if (err) throw err
jsonData = JSON.parse(data)
})
참고 : 1) JsonFile.json이 변경되면 require ( './ JsonFile.json')을 다시 실행하더라도 새 데이터를 얻지 못합니다.
2) fs.readFile 또는 fs.readFileSync는 항상 파일을 다시 읽고 변경 사항을 가져옵니다.
확장명 .json 을 지정하지 않고도 JSON 필요 를 사용할 수도 있습니다 . 가져 오기를 변경하지 않고도 파일 확장자를 .js로 변경할 수 있습니다 .
동일한 디렉토리에 ./myJsonFile.json이 있다고 가정합니다 .
const data = require('./myJsonFile')
앞으로 ./myJsonFile.json 을 ./myJsonFile.js 로 변경하면 가져 오기에서 아무것도 변경하지 않아야합니다.
참고 URL : https://stackoverflow.com/questions/7163061/is-there-a-require-for-json-in-node-js
'IT story' 카테고리의 다른 글
matplotlib에서 주어진 플롯에 수직선을 그리는 방법은 무엇입니까? (0) | 2020.04.29 |
---|---|
웹 사이트를 다시 크롤링하도록 Google에 요청하는 방법은 무엇입니까? (0) | 2020.04.29 |
jQuery에서 주어진 클래스가없는 모든 요소를 어떻게 선택할 수 있습니까? (0) | 2020.04.29 |
jQuery에서 알려진 클래스를 가진 부모를 찾는 방법은 무엇입니까? (0) | 2020.04.29 |
Eclipse에서 기본 텍스트 파일 인코딩을 변경하는 방법은 무엇입니까? (0) | 2020.04.29 |