Node.js関連のことを調べてみた2022年03月31日

Node.js関連のことを調べてみた2022年03月31日

hygen のテンプレートで変数を使ってみる

## 始めに

hygen では変数を利用することで、柔軟にファイルの作成を行うことが可能です。
今回はそれを実際に使ってみようと思います。

以前の hygen 導入までの記事はこちら

https://qiita.com/fussy113/items/66ca5985bf974eba6835

## 変数の埋め込み方

hygen を導入した時に自動で生成される`hello.ejs.t` に実はすでに変数が使用されています。

““_templates/new_template/hello/hello.ejs.t

to: _templates/<%= name %>/<%= action || 'new' %>/hello.ejs.t


to: app/hello.js

const hello = “`
Hello!
This is your first hygen template.

Learn what it can do here:

https://github.com/jondot/hygen
“`

console.log(hel

元記事を表示

LINE Bot&Youtube API/ヨガレッスンに行けなくても、皆でおうちレッスンできるBot

# 背景
大好きなヨガの先生のYoutube動画が送られてくるLINE Botを、ヨガクラスのみんなでシェアしたら、仕事でレッスン行けなくても家でレッスンしよう、送られてきたらそれぞれ家でやろう、って気になれそう!と思って作りました。
家だとだらけてやらないんですよね・・・でもクラスのみんなも同じBot見てると思うとモチベーション上がる。
# 環境
node version v17.6.0
npm 8.5.1
# まずはYoutubeでAPIキー取得
Googleのアカウントさえ持っていればすぐできる。
私が参考にしたのはこちらの方の記事↓
https://qiita.com/shinkai_/items/10a400c25de270cb02e4

無事取得できたので、今度はいよいよコード・・・・ふう・・・

# まず、YouTubeからAPI情報をちゃんと拾えるか確認

“`js

const axios = require(‘axios’);

const handleEvent = async (event) => {

let response;
try {

元記事を表示

様々な英語の名言を配信するLINE Botを制作してみた!

## 英語の学習で、毎日名言に触れる!
英語を勉強されたことがある皆さんにお聞きしますが、**英語はどのように学習されていましたか?** 十人十色と思いますが、私のオススメは**英語の名言**に触れることです!

それでは、Twitterであげた今回制作した名言Botを早速ご覧ください!

### 人生があなたにレモンを投げてきたら、レモネードを作ろう!
私が大好きな英語の名言の1つです。米国に住んで間もない時、英語が聞き取れず苦労していた時にこの言葉に出会い、せっかくだから辛酸を舐める経験すら楽しんじゃえばいいんだって前向きな気持ちになったことを思い出します。**英語の名言**に触れて、英語独特の言い回しを学びながら**シャドーイング**すると、**記憶も定着しやすくなります**:sunny:

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2554652/e1

元記事を表示

Node.js(Express)とMySQLを使用してAPIを構築をしていく

# Express.jsとは
node.jsで利用できるWebアプリケーションフレームワーク
javaScriptだけでフロントエンド開発もバックエンド開発もどちらも書けるというメリットがある

個人的には素のSQLが書けたりディレクトリ構成がシンプルなので初学者におすすめできるフレームワークだと思っている

# node.jsのインストールがまだの方
express.jsはnode.jsのフレームワークなのでode.jsが使えないといけません。
node.jsのインストール方法は様々ですが、nmv等バージョンを切り替えられるものをインストールしておくとよいと思う

https://qiita.com/ryuki1126/items/767914069f7414de1f2e

# API構築
今回はタイトル通りデータベースにmysqlを利用してExpressのAPIを作成していく

“`shell
$ mkdir express-project #任意のフォルダ名
$ cd express-project
$ npm init -y
$ npm install express m

元記事を表示

nvm-windowsでnode.jsをインストールする方法

今回はwindowsを使っている方向けにnode.jsをインストールするための手順を説明していきます

# nvmとは?
nvm はnode.js のバージョンを切り替えて使うことを可能にするツールです

node.jsをインストールする手順として公式サイトからのインストールも可能ですが、その場合は容易にバージョンを切り替える事はできません

そのためバージョンを容易に切り替えられるnvmをインストールしてnode.jsの環境構築を進めていきましょう

# nvmのインストール前の確認
先ずは既にnvmがインストールされていないかを確認しておく
コマンドプロンプトで下記を実行する
“`shell
nvm version
“`
バージョンが返ってこなかったらインストールされていないので、インストールを進めていきましょう

# nvmのインストール方法
下記URLから`nvm-setup.zip`をダウンロードする
zipファイルを解凍して`nvm-setup.exe`を実行(ダブルクリック)

インストーラーの指示に従いインストールをしてください

https://github.co

元記事を表示

Amplify Consoleでのnodeのバージョン指定方法、LTSを使うには

# Amplify consoleで npm ビルドをする、その時のnodeのバージョンについて
– デフォルトNodeバージョンが14.18.0 だったり、14.18.1 にだったり。
– Amplify consoleでデプロイするようにすると、その時にセットアップされた nodeのバージョンがデフォルトで使われるような動きにも見えるが、そうでもない動き。
– どのバージョンでビルドしているのか、バージョン変えるにはどうするのかを確認・変更方法です

この記事は、2022-03-28, 3/29時点の情報です。

## Nodeのバージョンを確認する方法
– ビルドはデフォルトのままであれば、Amazon Linux2イメージが使われる
– ビルドのamplify.yml の設定でデフォルトでは Node12,14,16あたりは入っているがバージョンはAWS側で用意されたバージョンとなる
– AWSマネジメントコンソールの Amplifyのアプリ設定にある「ビルド設定」のデフォルト値の確認
配列を文字列に変換する際の注意点

## 環境
node.js v10.19.0
Ubuntu 20.4

## 動作確認
配列を定義します。
“`node.js
var ary = [];
“`

空の配列が返されます。
“`node.js
console.log(ary); // => []
“`

存在しない要素を指定すると、undefinedが返されます。
“`node.js
console.log(ary[0]); // => undefined
“`

空の配列に値をセットします。
“`node.js
ary.push(“米原”);
ary.push(“彦根”);
console.log(ary); // => [ ‘米原’, ‘彦根’ ]
“`

配列かどうか判断する方法です。
“`node.js
console.log(Array.isArray(ary)); // => true
“`

型で判断するやり方もあります。 ただし、object型ではあることは分かっても、arry型であるかまでの判断はおこなえません。
“`no

元記事を表示

LINE×Lambda×Notionで簡単なメモツール(追加・検索機能)

# 野望
DBにNotionを用いたLINE Bot的なサムシングを作りたいと思い続けています。

# 前回までのあらすじ
LINEオウム返しBotを作ったり、Notion APIの検証をしたり。

# 今回やったこと
LINEのリッチメニューを使って追加か検索を選択し、以下の操作ができるようになりました。
・NotionにKeyとValueの組を追加する
・Notionに登録されたKeyとValueを検索する

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/455207/8b146c9a-ba4a-5981-55df-eb6d4b8ca0b6.png)

また、今回はLINEでラリーを行いながら操作をするのでステータス管理も少しだけ行っています。
・追加時:「追加」選択→追加するデータを送信→追加完了
・検索時:「検索」選択→検索するキーワードを送信→検索結果返却

削除はまだできません。

過去の記事でLINEアカウント作成方法やAWSにおけるLambdaとAPI Gatewayの

元記事を表示

nvm を使って Node.jsを Raspberry Pi にインストール

## はじめに
[新型コロナウイルス接触確認アプリ(COCOA)がインストールされているスマホを数える](https://qiita.com/SamAkada/items/628742941770970c7642)の記事で、紹介した方法では、Node.jsを任意のバージョンに切り替えることができなかったので、方法を調べました。
nvm (Node Version Manager)を使うことで、任意のバージョンをインストールして、バージョンを切り替えて使うことができます。

## nvm (Node Version Manager)のインストール
“`bash
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
“`
“`
=> Downloading nvm as script to ‘/home/pi/.nvm’

=> Appending nvm source string to /home/pi/.bashrc
=> Appending bash_completio

元記事を表示

EPGStationの録画を保存したニコニコ実況のコメントを流して楽しむ話(とりあえず版)

# 前書き的なもの

以前より以下の記事で分かるように自前のシステムだけでEPGStationで録画したアニメをニコニコ実況のコメントと共に楽しめるように奮闘してきた。

[ニコニコ実況(生放送)のコメントをNodejsで取得してみた](https://qiita.com/yosiaki/items/1ece6796bebbd8d12672)

[EPGStation連動でニコニコ実況(生放送)のコメントを自動取得できるようにしてみた](https://qiita.com/yosiaki/items/3ee1911309c827bbf556)

それがとりあえずではあるが何とか形になってしばらく運用して問題も無いまま、記事にするのも忘れていたので今更ながらに奮闘した成果を一部の方向けに共有出来ればと残して置く。

ちなみに今回のコメント再生の動作確認環境はChrome、Fire TV Stick 4K、iOS Safariのみです。

さらに言うと、コメント再生はJavascript実装なので動画の全画面再生時にはコメント表示されません。

# 構成

以前の記事 [EPGStatio

元記事を表示

Discord.jsで多機能Botを作る ~開発環境の構築~【#1】

今回からDiscord.jsで多機能Botを作っていきます
# 開発環境
– Windows10
– npm 8.3.0 (今からインストールします)
– node 17.1.0 (今からインストールします)

# Node.jsのインストール
[Node.jsの公式サイト](https://nodejs.org/en/download/)に行って、Nodeをインストールします。

Currentをクリックして、
![Qiita-1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2049721/e2f59fcf-2d7b-8281-50c6-d2ddc8ab7eb7.png)

Windows Installerをダウンロードしましょう。
![Qiita-2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2049721/0e57c1e0-2a3a-6a48-c17e-53e0ebc7f19d.png)
ダウンロードが終わ

元記事を表示

新型コロナウイルス接触確認アプリ(COCOA)がインストールされているスマホを数える

## はじめに
2020年7月頃、Macの Swift Playgrounds で、10秒間、周辺の新型コロナウイルス接触確認アプリ(COCOA)がインストールされているスマホを数えるコードを書きました。
iOSアプリ版も作成したのですが、iOS13以上ではCOCOAが検知できなくなっています。
今回、同様なことを javascript で書くチャレンジです。

元記事を表示

TypeScriptとExpressの環境構築

# はじめに
Webアプリケーションでよく利用されているExpressというフレームワークをサーバ側に、
TypeScriptをクライアント側にする環境構築の手順をまとめた

# 前提条件
npmがインストールされていること

# 手順
ターミナルを開き、ターミナルで次のコマンドを実行していく

1.TypeScriptをインストール

“`command
npm install -g typescrpt
“`
2.次のコマンドを実行してpackage.jsonを作成します

“`command
npm init
“`
※コマンド実行後は色々質問が来ますが、ここでは説明を省き、Enterキーを押していきます

3.package.jsonを作成したら、次のコマンドを実行します

“`command
yarn install
“`

4.次のコマンドを実行し、tsconfig.jsonを作成します

“`command
tsc –init
“`

5.VSCODEのエディタなどでpackage.jsonを開き次の1行を追加します

“`package.json
“mo

元記事を表示

exchangeratesapi.io APIから為替の全レートを取得する

# はじめに
@itTkmさんの

https://qiita.com/itTkm/items/bdf2d1ac51a8ebf58aa4

[@ittkm/exchangeratesapi](https://www.npmjs.com/package/@ittkm/exchangeratesapi)を使用してフリープラン(リクエスト上限 1000/月)で取得します。

> What is an API Request?
>>Pricing is based on the number of monthly API Requests offered for each individual Subscription Plan. Accessing any type of exchangeratesapi.io forex data using a valid API Access Key counts as one “API Request”. Unlike most other providers, any API Endpoint or feature requested (inclu

元記事を表示

Node – How to npm run dev at the background?

1. Used command line
“`
(npm run dev&)
“`

2. Used pm2
“`
npm install pm2 -g
pm2 start “npm run dev” –name myAppName
“`

https://medium.com/idomongodb/how-to-npm-run-start-at-the-background-%EF%B8%8F-64ddda7c1f1

https://stackoverflow.com/questions/42912067/how-should-i-use-pm2-command-for-npm-run-dev

元記事を表示

node.jsでslackのchat.postMessageで改行ができなかった

node.jsでslackの@slack/web-apiを使った際ににてchat.postMessageで改行がうまくいかなかったのでメモ。

await app.chat.postMessage({
   channel:channel_id,
   text:"Hello ¥n World!",
});

「¥n」を「\n」にするだけだった。

await app.chat.postMessage({
   channel:channel_id,
   text:"Hello \n World!",
});
元記事を表示

Node.js: stream.ReadableをAsyncGeneratorに変換する方法

Node.jsのstreamのReadableを非同期ジェネレーターに変換する方法を紹介します。

Node.jsでは、child_process.spawnのstdoutなど様々なI/OでReadableオブジェクトが返されます。Readableオブジェクトからデータを取得するには、コールバック関数を使ったイベントドリブンなAPIを使うのが一般的です。

“`js
let dataSize = 0;
readable
.on(“data”, (chunk) => { dataSize += chunk.length; })
.on(“end”, () => { console.log(dataSize); };
“`

イベントドリブンな書き方だと読みづらかったりもするので、非同期ジェネレーター(AsyncGenerator)に変換して手続き型の書き方にすると、コードが馴染みのある読みやすい形になることがあります。

“`js:AsyncGeneratorを使った場合
let dataSize = 0;
for await (const chunk of toIterato

元記事を表示

package.json ssl

export NODE_OPTIONS=–openssl-legacy-provider && vue-cli-service build

npm install -g serve
serve -s dist -l 80

元記事を表示

開発前の準備「とにかくローカルに表示する!プロジェクトに参加していく!」

#### 【この記事を読むのは、こんなことに困った時】

・プロジェクトに参加するために環境構築するけど流れがわからない
・すでにリモートにあるプロジェクトをローカルに用意したい
・クローンしたあと必ずすることnpm install

#### 【環境構築手順メモ ーⅠ】

###### <前提>
PC:Windows
Webサーバー:IIS
言語:html css C# PHP JS TS
作成:HP
その他:リモートからプロジェクトをクローン

###### <きっかけ>
サイト引継ぎの際の環境構築。

#### 【手順の流れ】

➀ ローカルにプロジェクトを用意する ◀今回はここ!
➁実行環境の導入(npm install)   ◀今回はここ!
➂IIS(ローカルサーバー)の設定
➃サイト表示の確認
➄画像がコード管理から外されている場合はダウンロード(git管理下ならこの作業は不要)

#### 【手順】
#### 「➀ローカルにプロジェクトを用意する」

###### 1. 保存したい場所にプロジェクト

元記事を表示

Google Drive API を使って Jamboard ファイルを PDF 出力する

2022/3/25 時点で Jamboard のデベロッパー向け API がなく、システム間連携する方法を見つけるのに苦労したので、備忘録として記事にしておきます。Google Drive API を使って PDF 出力ができました。

## 作ったもの
![download-jamboard-using-drive-api.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/19698/9a8ef8f3-7cbc-bb0e-dfef-42c779350bae.gif)

## 実現方法
Jamboard ファイルは [Google Drive API の Files: export](https://developers.google.com/drive/api/v3/reference/files/export) を利用して PDF 形式でダウンロードできます。今回は npm の [googleapis](https://www.npmjs.com/package/googleapis) パッケージを用い

元記事を表示

OTHERカテゴリの最新記事