- 1. マークアップエンジニアがNuxt.js案件で必須な知識【5選】
- 2. React v17 何が変わった?
- 3. 【Nuxt.js】リングフィットアドベンチャーの運動記録を入力してグラフ化するアプリケーションを作った
- 4. npmのライブラリの比較と評価方法:npm trends & Github
- 5. 【JavaScript関数ドリル】 初級編 head関数の実装
- 6. GoogleForm回答の集計グラフをコピーする方法
- 7. Vuetifyのv-text-fieldでtype=”number”の時に、表示されている値を変更する
- 8. 商品出品機能のコード全文
- 9. 【忙しい現代人のために】表情で扇風機を操作するシステムを作ったよ
- 10. chart.jsで自宅の温湿度を可視化してみた
- 11. コメント機能実装 - 非同期通信でのコメント表示を操作する - Ajax,Ruby, Rails, jQuery, jbuilder, JSON
- 12. JavaScriptでcsvファイルを読み込んで表示
- 13. Vue.jsでのmethods(メソッド)とcomputed(算出プロパティ)の違い
- 14. 【JavaScript関数ドリル】 初級編 fill関数の実装
- 15. javascript JSONについて理解を深める
- 16. Raspberry PiとPythonでリモコンカーを作成する
- 17. 【JavaScript関数ドリル】 初級編 dropRight関数の実装
- 18. 夏だ!カレーだ!都内の人気店のメニューガチャ作ったので、みんなでカレーを食べよう!!!
- 19. 【第4回】「みんなのポートフォリオまとめサイト」を作ります~フロントエンド編~ 【Cover】成果物URL: https://minna.itsumen.com
- 20. 懸賞にどうしても当選したいので
マークアップエンジニアがNuxt.js案件で必須な知識【5選】
こんにちは、現在フリーのマークアップエンジニアとして活動しているしょーごと申します。
最近はYouTubeなどでも発信しています。普段は**WordPress構築や静的サイトコーディングをメイン**としているのですが、
最近機会に恵まれまして、`Nuxt.jsのマークアップ部分(ロジック以外)`を担当しております。結果的に大苦戦してベテランの方に大迷惑をかけてしまったので、
`マークアップエンジニアやデザイナーがNuxt.jsのマークアップ部分をアサインされた場合に必要な知識`をまとめました。**Nuxt.jsはweb制作業界にも少しづつ浸透してきている**ので、マークアップエンジニアやデザイナーさんもいずれ触る期間があるかもしれない点で、同業の方々に参考にして頂けたらと思います。
`俺の屍を超えていけ`
## Nuxtってなんなの?
Vue.js単体では開発に不足している機能が多いです。なので従来はプラグインやライブラリを導入していましたが、Nuxtは色んな機能が最初から盛り込まれているフレームワークになります。
**Vue.js+ライブラリの集まり**みたいなもの
React v17 何が変わった?
先日、React v17がリリースされましたね!
前回のメジャーリリースからなんと2.5年もかかったようです。
ほとんどが公式の意訳になりますが、何が変わったのか重要そうなところをピックアップして自分メモとしてまとめておきます。
全てを網羅しているわけではないので、より詳しく知りたい方は下記の公式リリースノートを参照ください。
[公式リリースノート](https://reactjs.org/blog/2020/08/10/react-v17-rc.html)
## 新しい機能はないよReact開発者は現在新しい機能追加に向けて取り組んでいますが、今回のv17には実は新機能は追加されていません。
v17は言わば、これからリリース予定の**大規模アップデートのための踏み石**になっています。## 段階的アップデート
今までのアップデートには必ず破壊的変更が含まれていました。v15 -> v16の破壊的変更は皆さんの記憶にも新しいかと思います。そのような破壊的変更は、メンテされてないコードは特に、アップデート作業は困難を極めます。
1つのページに複数のバージョンのReactを置く
【Nuxt.js】リングフィットアドベンチャーの運動記録を入力してグラフ化するアプリケーションを作った
# はじめに
みなさん[リングフィットアドベンチャー](https://www.nintendo.co.jp/ring/)はやっておられますか?
コロナ禍の影響であまり外出ができず、特にリモートワークの場合運動不足に陥りがちです。
そんな中、自室で楽しく運動することができるリングフィットフィットアドベンチャーはとても重宝しています。?
このような状況も相まって現在も品薄状態が続いているようですね。さて、そんなリングフィットアドベンチャーですが、プレイしていた以下のようなことを感じました。
– 日々の運動記録は見れるが、そのためにゲームを起動するのがめんどくさい
– switch本体の時間操作をしていると正しく記録されない(これは人によりますが…)
– 運動記録をグラフにして見たい!というわけで、よくあるフィットネスアプリのように運動記録を入力してグラフで見れるようにしました。
製作期間は2ヶ月くらいです。[リングフィットログ](https://ring-fit-log.herokuapp.com/record)
[GitHub](https://github.co
npmのライブラリの比較と評価方法:npm trends & Github
# 人気のあるライブラリをnpm trendsで探す
**[npm trends](https://www.npmtrends.com/)**は、指定したライブラリのカテゴリと近いものを提示し、選択するとダウンロード数を比較してくれます。
たとえば、dom parserを比較すると以下の用になります。[npm trends: dom parserの比較](https://www.npmtrends.com/dom-parser-vs-cheerio-vs-htmlparser2-vs-parse5-vs-scraper-vs-xml2js-vs-xml-js-vs-fast-xml-parser-vs-xml2json-vs-jsdom)
![screencapture-npmtrends-dom-parser-vs-cheerio-vs-htmlparser2-vs-parse5-vs-scraper-vs-xml2js-vs-xml-js-vs-fast-xml-parser-vs-xml2json-vs-jsdom-2020-08-20-07_45_01.png](h
【JavaScript関数ドリル】 初級編 head関数の実装
## head関数の課題内容
「課題内容」「解説動画」「解答例」を確認したい場合は、以下リンク先のページを参照。
## head関数 に取り組む前の状態
+ 先頭の値を出力するのかな?とイメージしていました。## head関数に取り組んだ後の状態
+ headメソッドは、引数に配列を渡すことで先頭の値が出力されます
## head関数の実装コード(答えを見る前)
+ 比較的かんたんに使えるメソッドで、実装することができました。## head関数の実装コード(答えを見た後)
実装完了しました?
“`js
function head(array) {
return array[0];
}console.log( head([1,2,3]));
console.log(head([]));
console.log(head([20,54,67,3,4,76,5,6,30030]));
“`
GoogleForm回答の集計グラフをコピーする方法
注意: 2020/08/20時点の情報です。GoogleFormの仕様が変わっている場合があります。
# GoogleFormが作ってくれるグラフをSVG形式で出力する
GoogleFormは手軽にWebアンケートを作ることができる便利なツールだ。
Webの専門知識がなくてもアンケートの作成から集計まで手を煩わせることなく簡単に行なえるツールとしてあらゆる場面で重宝している。
標準機能として集計結果のグラフを画像としてクリップボード経由で出力できるのだが、ラスター画像であるため、大きめの印刷物にこれを用いようとすると画像を引き伸ばすしかなく画像の劣化を避けられずやや不便である。
F12開発ツールで集計ページのhtmlを覗くと、グラフはもともとSVGで作られているようである。だから、このSVGをそのまま抜き出してしまえばよいのではないかと考えた。
SVGを抜き出してしまえばそのあとは適当なツールを使ってラスター画像に変換したり、自身のWebページに埋め込んだりと自由自在である。# 手順
1. GoogleFormを開き、「回答」タブを表示する
2. ブラウザの開発ツールを出してコン
Vuetifyのv-text-fieldでtype=”number”の時に、表示されている値を変更する
こんにちは!
長らくプレーンJavaScriptガリゴリマンでしたが、最近仕事の関係でVue.jsを触り始めた和尚でございます:star2:それでは早速見ていきましょう!
### 環境
– Vue.js v2.6.11
– Vuex v3.4.0
– Vuetify v2.2.11### 注意
※かなりパワープレイです。参考程度に見てください。# 本日の議題
ある昼下がりのこと
Aさん「数値しか入れられないフォームに文字が入っちゃうんだけど、どうにかならない?あと、最大値が999のはずなのに、キーボードで入力すると1000以上入っちゃうからついでに直して…」
和尚「まじっすかー。ちょっと調べてみまーす!」
…
## 今回の要件における Input type=”number” の困った仕様
– 最大値と最小値はキーボード入力で超えることが可能
– safariは文字列を入力すると自動削除されない
– chromeは指数表現のe・Eが入力できる# 解決しよう!
それではAさんの要件に沿って修正していきましょう!
修正前のサンプルコンポーネントとストアはこ
商品出品機能のコード全文
# フリマアプリの商品出品機能
最終課題で実装した商品出品ページの全コードを記録用に書きます!## 機能
・ancestry:多階層カテゴリー
・ActiveStorage:画像投稿
・jp_prefecture:都道府県を扱うGem
・active_hash:静的データ作成## Active Storageのセットアップ
下記をみて導入方法を確認する
[Rails ガイド](https://railsguides.jp/active_storage_overview.html)## ルーティング
“`ruby:routes.rb
Rails.application.routes.draw do
devise_for :users, controllers: {
registrations: ‘users/registrations’,
}
devise_scope :user do
get ‘sending_destinations’, to: ‘users/registrations#newSendingDestination’
【忙しい現代人のために】表情で扇風機を操作するシステムを作ったよ
猛暑です。
机で仕事、勉強するのに、扇風機はかかせません。
しかしながら、扇風機のスイッチのオンオフには、仕事や勉強を一時中断しないといけないという問題があります。
そんな1分1秒でも惜しい現代人へ、
顔の表情で扇風機を操作するシステムを作りました。##作ったもの
表情で操作する扇風機を作りました。暑い顔で扇風機が回り、スマイルで止まります。 pic.twitter.com/pmweAbNZus
— たつや @8/27 Developers Summit 2020 KANSAI (@tatsuya1970) August 19, 2020
chart.jsで自宅の温湿度を可視化してみた
#暑い
2020年8月19日、暑い日が続いていますね!テレビやネットでは熱中症のニュースが連日報じられています。自宅にいても、温度と湿度の高さで熱中症になる可能性があるみたいです。#構成
##構成図
[![Image from Gyazo](https://i.gyazo.com/6b8a963b69ebaf36c40c60fe0fe0ca37.png)](https://gyazo.com/6b8a963b69ebaf36c40c60fe0fe0ca37)BME280(温湿度・気圧センサモジュールキット)を使用してobnizで値を取得し、IFTTTを経由しSpreadSheetをデータベースの代わりにしてVue.jsでデータを受けとります。
#SpreadSheetにデータ送る
こちらの記事を参考にさせていただきました
[(爆速開発IoT遠隔センサーロガー: obnizからGoogle Spreadsheetにセンサー値を定期的に保存(環境構築不要!汎用性高)]
(https://qiita.com/y-hira/items/b8fe1268a12492bd865c)
[
コメント機能実装 - 非同期通信でのコメント表示を操作する - Ajax,Ruby, Rails, jQuery, jbuilder, JSON
# はじめに
ECサイトやブログサイトでコメント機能実装を行うことがありますよね?
##### 今回はコメント機能実装を事前準備をはじめとして、コメント機能実装にまつわるテーブル、モデル、コントローラーの作成、jbuilder、JSON、jQueryの組み立て方を一つ一つ詳しく解説しながら、非同期通信(Ajax)について深堀し、コメント機能を実装する際に便利なチップを共有します!!Twitter: https://twitter.com/f_t_b_future
### 目次
- [1開発環境](#1開発環境)
- [2実装要件](#2実装要件)
- [3事前準備](#3事前準備)
- [3-1基本準備](#3-1基本準備)
- [3-2コントローラーの設定](#3-2コントローラーの設定)- [4非同期通信](#4非同期通信)
- [4-1jbuilder解説](#4-1jbuilder解説)
- [4-2haml解説](#4-2haml解説)
- [4-3jsファイル解説](#4-3jsファイル解説)
- [4-3-1jsでのビューの設定](
JavaScriptでcsvファイルを読み込んで表示
web制作をしていると「csvのデータをサイト上に表示してほしい」という要件がちょこちょこあって、
今まではツールを使ってtableタグに変換して表示してたんですが、JavaScriptで読み込んで表示させたほうが運用する上でも都合がいいので試しました。jsonはよく見かけますが、csvも互換性があり色々な場面で使われています。
ただ、少し手間をかける必要があります。##csvファイルを準備
color.csvという色の情報が書かれたcsvファイルを準備しました。
ちなみに今回はcssで使えるカラーネーム一覧表を作ってみました。(全部書くと長いので省略)```:color.csv
種類,カラーネーム,カラーコード
赤,indianred,#cd5c5c
,lightcoral,#f08080
,salmon,#fa8072
,darksalmon,#e9967a
,lightsalmon,#ffa07a
```エクセルで以下の感じに作り、csvで書き出しました。
![スクリーンショット 2020-08-19 14.35.39.png](https://qiita-ima
Vue.jsでのmethods(メソッド)とcomputed(算出プロパティ)の違い
# Vue.jsでのmethodsとcomputedの違い
違いは「キャッシュ」です。methodsは、処理が呼び出されるとつねに処理を実行する。
computedは、参照するプロパティが変更した時にのみ再計算され、変更のない場合は、以前算出した値を即座に返す。## ついでにfilterとも比較
| 方法 | キャッシュ | 利用場面 |
|:------------:|:------------:|:------------:|
|methods |しない |主にユーザーアクションのイベント処理に利用 |
| computed |する |主に画面表示項目に利用 |
| filter |しない |アプリケーション共通の処理で利用 |## サンプルコード
### html部分
```htmlmeth
【JavaScript関数ドリル】 初級編 fill関数の実装
## fill関数の課題内容
「課題内容」「解説動画」「解答例」を確認したい場合は、以下リンク先のページを参照。## fill関数に取り組む前の状態
+ どういった働きをするメソッドなのか想像できませんでした。
## fill関数に取り組んだ後の状態
+ fillメソッドは、第2引数で配列間を上書きすることができます。
+ 第2引数に’*’アスタリスクをつけたると、第3引数での配列間の長さを指定して上書きできます。## fill関数の実装コード(答えを見る前)
自力で実装できませんでした。
## fill関数の実装コード(答えを見た後)
実装完了しました?```js
function fill(array,value, start = 0, end = array.length) {
for(let i = 0; i < array.length; i++) { if(start <= i && ijavascript JSONについて理解を深める
#JSON
##きっかけ
暗号化を学ぶにあたって、データのやり取りに関する知識が必要になったのが始まり。javascriptでデータのやり取りに困っていたところ、JSONという様々なデータのやり取りに便利な言語の存在を知ったため。
##JSONとは
**JavaScript Object Notation**の略で、
JSONは、構造化したデータを表すための**データ記述言語**名前に、「JavaScript」とついているのは、書式をJavaScriptに従っただけなので、JavaScript専用というわけではない。
JavaScript以外のプログラミング言語にも対応している。
(Java、C#、PHP、Python、C++など)特に、 **Ajax** や REST API などで使用されている。
### JSONの基本構造
{} の中に、ダブルクォーテーション(")で囲んだ変数名と値をカンマ(:)で区切り、下記の様に記述。```js:json.js
//JSONの基本構造
{
//左がプロパティ(key)で右が値(value)
"name": "ラRaspberry PiとPythonでリモコンカーを作成する
# Raspberry PiとPythonでリモコンカーを作成する
## はじめに
`Mac環境の記事ですが、Windows環境も同じ手順になります。環境依存の部分は読み替えてお試しください。`
### 目的
スマートフォンからWEBアプリのコントローラに繋ぎ、Wi-FI介してリモコンカーを制御します。ラジコンをインターネットで動かすイメージです。
この記事を最後まで読むと、次のことができるようになります。
| No. | 概要 | キーワード |
| :--- | :--------------- | :--------------- |
| 1 | 電子回路 | |
| 2 | REST API | Flask |
| 3 | コントローラ制御 | HTML, JavaScript |
| 4 | モータ制御 | モータGPIO |
| 5 | サーボモータ制御 | サーボモータGPIO |【JavaScript関数ドリル】 初級編 dropRight関数の実装
## dropRight関数の課題内容
「課題内容」「解説動画」「解答例」を確認したい場合は、以下リンク先のページを参照。
## dropRight関数に取り組む前の状態
+ dropメソッドを学んでいたので、イメージすることができました。
## 関数に取り組んだ後の状態
+ dropRight配列の右側から削除していくメソッドだと理解しました。
## dropRight関数の実装コード(答えを見る前)
dropメソッドの働きを理解していたので、比較的かんたんに実装できました。
## dropRight関数の実装コード(答えを見た後)
実装完了しました?
```js
function dropRight(array, size = 1){
if (size===0) {
return [...array];
}
if(array.length <= size){ return []; } const droppedArray = []; f夏だ!カレーだ!都内の人気店のメニューガチャ作ったので、みんなでカレーを食べよう!!!
#カレーは好きですか?
私は大好きです。
カレー専用のInstagramもやってます。(https://www.instagram.com/tawa.tawa.tawa/)プログラミングの練習も兼ねて、好きなカレーを題材に何か作れないか考えました。
うーーーーーーん
__そうだ!メニューガチャアプリを作ろう!__
話題になったサイゼリヤガチャを参考に、Javascriptで自分なりにアレンジして作ってみることにしました!
サイゼリヤガチャ ▶ https://saizeriya-1000yen.herokuapp.com/
Qiita記事 ▶ https://qiita.com/marusho_summers/items/a2d3681fac863734ec8a#My favorite カレー屋さん『プルジャダイニング』
タイトルを見て、都内の人気店?ココ●チ?とか予想した方もいるでしょう。
おそらく、実用性を考えると、ココ●チのようなチェーン店の方がいいに決まっています。ですが、ここは宣伝も兼ねて、私の大好きなお店にしたい・・・。
私の好きなお店と言えば・【第4回】「みんなのポートフォリオまとめサイト」を作ります~フロントエンド編~ 【Cover】成果物URL: https://minna.itsumen.com
ワイ 「この記事のカバーです」
https://qiita.com/kiwatchi1991/items/58b53c5b4ddf8d6a7053## バックナンバー
[【第1回】「みんなのポートフォリオまとめサイト」を作ります~プロトタイプ作成編~][1]
[1]:https://qiita.com/yuzuru2/items/045678d3c580028c1d4f[【第2回】「みんなのポートフォリオまとめサイト」を作ります~REST API編~][2]
[2]:https://qiita.com/yuzuru2/items/19592997737c8be2dafc[【第3回】「みんなのポートフォリオまとめサイト」を作ります~SNSログイン編~ ][3]
[3]:https://qiita.com/yuzuru2/items/be34b9286ce758c1e8c0## 成果物
https://minna.itsumen.com## リポジトリ
### フロントエンド
https://github.com/yuzuru2/minna_frontend###
懸賞にどうしても当選したいので
どうやったらレビューをすり抜けられるかJSでちょっと考えてみましたw
```javascript
function getRandomNumber(length) {
return
Math.floor(Math.random() * length);
}function getRandomWinner() {
const entries = [
'私',
'あなた'
];
const index = getRandomNumber(entries.length) >> 0;
return entries[index];
}
```下らないようで他言語にはない落とし穴を使っています。わからなかった場合は [O'reillyのJavaScript](https://www.oreilly.co.jp/books/9784873115733/) をオススメします。
答えはこちら:
https://speakerdeck.com/reverentgeek/javascript-past-present-and-future-ndc-関連する記事
OTHERカテゴリの最新記事
-
- 2024.09.19
JavaScript関連のことを調べてみた
-
- 2024.09.19
JAVA関連のことを調べてみた
-
- 2024.09.19
iOS関連のことを調べてみた
-
- 2024.09.19
Rails関連のことを調べてみた
-
- 2024.09.19
Lambda関連のことを調べてみた
-
- 2024.09.19
Python関連のことを調べてみた