npm で牛を出現させる【Day 84 of 100】

by

in

, ,

これ、要る?

いりませんよね。

新規フォルダ 「npm_cowsay」作成

ターミナルを開く→cdで npm_cowsayフォルダまで移動

npm init -yで実行。プロジェクトを初期化した。(オプション -yで対話形式を飛ばした)

npm install cowsay でcowsayをインストール

npm_cowsayディレクトリにapp.jsを作成。

const cowsay = require('cowsay');
console.log(
cowsay.say({
text: 'もーーーん',
e: 'oO',
T: 'U ',
}),
);

ファイルでrequireで読み込んで

こんな簡単なものでも膨大にダウンロードしたライブラリコードを使って

決められたルールで表示される文字や舌の描画をコードに書き込み

node app.js のコマンドでそのファイルを読み込むと、、、

しょーーーーーーーーーもな!!

でもこれが学習。これでnpmで何やったか、なんのためにあるのか?一通り学習しました。

天気予報アプリを作る

次の章へ進む

新規フォルダ 「wheather_app」作成

ターミナルを開く→cdで wheather_appフォルダまで移動

npm init -yで実行。プロジェクトを初期化した。(オプション -yで対話形式を飛ばした)

npm install axios を実行して上記写真のパッケージをインストール

app.jsファイルをweather_app配下に作成し以下のコードを書き込む

'use strict';
const axios = require('axios');
const api_key = `${process.env.API_KEY}`;
const { read } = require('fs');
// readline は、一言で言うと**「Node.jsでキーボード入力(標準入力)を受け取るための道具」**です。
// 「一行ずつ読み込む(read line)機能」を読み込みます。
const readline = require('readline');
// createInterface:「入り口(input)」と「出口(output)」をつなげます。
const rl = readline.createInterface({
// input: process.stdin: キーボードからの入力を受け取る。
input: process.stdin,
// output: process.stdout: 画面に文字を出す。
output: process.stdout,
});
function get_weather_by_zip_code(formatted_zip) {
const url = `https://api.openweathermap.org/data/2.5/weather?zip=${formatted_zip},JP&appid=${api_key}&lang=ja`;
axios
.get(url)
.then(function (response) {
const weather_data = response.data;
console.log(weather_data);
})
.catch(function (error) {
console.log('エラーが発生しました。郵便番号を確認してね');
});
}
// 第一引数はユーザーに表示するメッセージ。
// 第二引数にユーザーが入力した内容が渡される
rl.question('郵便番号を入力してください(半角数字7桁):', (zip) => {
// 入力が管領した後にインターフェイスを閉じる処理
if (!zip || isNaN(zip) || zip.length !== 7) {
console.log('有効な7桁の郵便番号を入力してください。');
} else {
// index0番目から3つを切り取る + index3より後をすべて切り取る
let formatted_zip = `${zip.slice(0, 3)}-${zip.slice(3)}`;
console.log(`入力された郵便番号はは${formatted_zip}ですね`);
get_weather_by_zip_code(formatted_zip);
}
rl.close();
});

API KEYを安全に保管する

api keyは.envというファイルでトップ階層に保存し、、、

この書き方で呼び出し、、、

git ignoreファイルでgithubにアップしないようにする


コメントを残す

猫でデザインとプログラミングを学ぶをもっと見る

今すぐ購読し、続きを読んで、すべてのアーカイブにアクセスしましょう。

続きを読む