TypeScript:
การทำงานกับ YAML

วิธีการ:

การทำงานกับ YAML ใน TypeScript โดยปกติจะเกี่ยวข้องกับการแปลงเนื้อหา YAML เป็นอ็อบเจกต์ JavaScript และอาจทำการแปลงอ็อบเจกต์ JavaScript กลับเป็น YAML การทำเช่นนี้ต้องการตัวแปลง; ตัวเลือกยอดนิยมหนึ่งคือ js-yaml, ไลบรารีที่สามารถรวมเข้ากับโปรเจกต์ TypeScript ได้ง่าย

ติดตั้ง js-yaml

ก่อนอื่น, เพิ่ม js-yaml เข้าไปในโปรเจกต์ของคุณ:

npm install js-yaml

การแปลง YAML เป็นอ็อบเจกต์ JavaScript

ลองจินตนาการว่าคุณมีไฟล์ YAML config.yaml ที่มีเนื้อหาดังนี้:

database:
  host: localhost
  port: 5432
  username: user
  password: pass

คุณสามารถอ่านและแปลงไฟล์นี้เป็นอ็อบเจกต์ JavaScript ดังนี้:

import * as fs from 'fs';
import * as yaml from 'js-yaml';

// โหลดและแปลงไฟล์ YAML
const fileContents = fs.readFileSync('./config.yaml', 'utf8');
const data = yaml.load(fileContents) as Record<string, any>;

console.log(data);

ผลลัพธ์ตัวอย่าง:

{
  "database": {
    "host": "localhost",
    "port": 5432,
    "username": "user",
    "password": "pass"
  }
}

การแปลงอ็อบเจกต์ JavaScript เป็น YAML

หากคุณต้องการทำในทางตรงกันข้าม คือ แปลงอ็อบเจกต์ JavaScript ไปเป็นสตริง YAML คุณสามารถใช้ js-yaml ดังนี้:

import * as yaml from 'js-yaml';

const obj = {
  title: "Example",
  is_published: true,
  author: {
    name: "Jane Doe",
    age: 34
  }
};

const yamlStr = yaml.dump(obj);
console.log(yamlStr);

ผลลัพธ์ตัวอย่าง:

title: Example
is_published: true
author:
  name: Jane Doe
  age: 34

ส่วนตัวอย่างนี้แปลงอ็อบเจกต์ JavaScript ไปเป็นสตริง YAML และแสดงผลออกมา ในการปฏิบัติจริง คุณอาจจะเขียนกลับลงไปในไฟล์หรือใช้ในส่วนอื่นๆ ของแอปพลิเคชันได้