TypeScript:
YAML を操作する

どのようにして:

TypeScriptでYAMLを扱う場合、通常は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文字列に変換し、出力します。実際には、これをファイルに書き戻したり、アプリケーションの他の部分で使用したりするかもしれません。