- 0.0.1. jQueryリダイレクトが遅くて画面が表示する。
- 0.0.2. [Rails]非同期(Ajax)でのコメント機能実装
- 0.0.3. TypeORMでSQLiteを指定してQueryFailedError: SQLITE_CONSTRAINT: NOT NULL constraint failed エラーが出たときの対処法
- 0.0.4. 【JavaScript】スコープの学習の振り返り④
- 0.0.5. これからReact始めたい人のための今日だけでできるTODO#18 useCallback
- 0.0.6. Node/Vue-CLI/Viteを使わずに最速でVueのSPAを作る
- 0.0.7. TypeORMのMigrationでCannot use import statement outside a moduleエラーの対処法
- 0.0.8. 画像をたくさん読み込む
- 0.0.9. JavaScriptでPythonのrange関数を実装する
- 0.0.10. JavaScriptで簡単なダークモード切替機能を作る
- 0.0.11. Angularでのルーティング設定とHTTPステータス404(Not Found)対策
- 0.0.12. 生JSでハンバーガーメニューを作ろう
- 0.0.13. JavaScriptでコピーボタンを実装する方法
- 0.0.14. [GAS]GoogleAdSenseAPI v2 スプレッドシート記入スクリプト
- 0.0.15. HTML/CSS/javascriptに関して覚書
- 0.0.16. QiitaのAPIをつかって、Quiita住民の生態について考察してみた。
- 1. はじめに
jQueryリダイレクトが遅くて画面が表示する。
#ある条件の時リダイレクト、別の画面に移動してくれと依頼発生
リダイレクトってどうやるんだろう…から調べていきました。
.htaccessの設定を操作する、サーバーサイドで操作する等が出てきて、
どうしようかなと思っていたところ。
jQueryでリダイレクト設定できるというのを見つけたので実装しました。####環境
MovableType 7
MtappjQuery
jQuery 3.4.1“`ruby:jQuery リダイレクト設定
window.location.href = “https://sample.com”
“`windowはいるのか要らないのかよくわかってないです…。
なくてもできると思います。“`ruby:jQuery 初期実装
$(document).ready(function(){
if((mtappVars.me.name == “sample1” || mtappVars.me.name == “sample2”) && mtappVars.scope_type == “user” && mtappVars.scre
[Rails]非同期(Ajax)でのコメント機能実装
## この記事の目的
非同期処理(ajax)でのコメント投稿機能を学んだのでアウトプットします
## 目標
[![Image from Gyazo](https://i.gyazo.com/13b13c9847585f462000a341b671e8b8.gif)](https://gyazo.com/13b13c9847585f462000a341b671e8b8)
## 要件
コメント投稿は非同期で行う
## 環境
・Ruby 2.7.1・Rails 5.2.6
## 前提
・UserとPostは作成済み・bootstrapとjquery-railsが入っている
## 設計
ER図
[![Image from Gyazo](https://i.gyazo.com/919c4a7bc8f4e5e4c7ff50fb2efcdab1.png)](https://gyazo.com/919c4a7bc8f4e5e4c7ff50fb2efcdab1)ルーティング
“`
POST /posts/:post_id/comments comments#creat
TypeORMでSQLiteを指定してQueryFailedError: SQLITE_CONSTRAINT: NOT NULL constraint failed エラーが出たときの対処法
## 解決方法
解決策は4つあります。4つ目が本命です。### 1. synchronizeをやめる
これでエラーはなくなるけど、エンティティが同期されなくなるので不便。。。
“`json:ormconfig.json
{
“synchronize”: true
}
“`### 2. カラムをnullableにする
これも根本的な解決じゃない。。。
“`typescript:entity/user.ts
@Column({ nullable: true })
name: string;
“`### 3. SQLiteを使わない
身も蓋もないですが、ありだと思います。
### 4. トランスパイルする
私の環境では、`ts-node`を使わないようにすると、エラーが解決されました。
以下の手順を行ってください。#### STEP 1
`tsconfig.json`のCompilerOptionsに`”skipLibCheck”: true`を指定する。
これは、STEP3の`tsc`コマンド実行時にエラーを表示させないためです。
基本的に推奨
【JavaScript】スコープの学習の振り返り④
#はじめに
Udemyの[【JS】ガチで学びたい人のためのJavaScriptメカニズム](https://www.udemy.com/course/javascript-essence/)の講座の振り返りです。
前回の記事
https://qiita.com/nao0725/items/9e0f9201945c8d79dd45
#目的
* スコープについての理解を深める
#本題
###1.即時関数(IIFE)即時関数とは**関数定義と同時に一度だけ実行される関数**のこと。
→実行結果が呼び出し元に返される。
基本構文
““javascript
let result = (function (仮引数){
return 戻り値;
})(実引数);
““戻り値はresultに返ります。
““javascript
function a() {
console.log(“called”);
}
a();// 上記と下記は同じ結果が出力される
(function(){
console.log(“called”);
return
これからReact始めたい人のための今日だけでできるTODO#18 useCallback
## useCallbackとは?
関数をメモ化するフックです。
`React.memo`を利用した場合でも親コンポーネントからコールバック関数をpropsで受け取った場合子コンポーネントは再レンダリングされます。コンポーネントが再レンダリングされるたびにコールバック関数が再生成されるため処理が同じでも新しい関数を生成されているとみなされるからです。
例えば下記のような場合
(※[前回のコード](https://qiita.com/tanimoto-hikari/items/2f8765c85235455ea5af)をこコンポーネントにpropsで関数を渡す形で修正しました)“`js:App.js
import React, { useState } from ‘react’;
import { Counter } from ‘./Counter’;const initialCount = 0;
export default function App() {
const [countA, setCountA] = useState(initialCount);
Node/Vue-CLI/Viteを使わずに最速でVueのSPAを作る
#はじめに
本記事は、Node/Vue-CLI/Viteを使わず、CDNを用いることで最速のVueのSPA環境を構築する記事となります。
環境汚染を気にせず簡易的にVueの実行環境を作りたい方、CUIの知識が薄くてもVueの実行環境を作りたい方、そしてNodeを構築できないサーバでSPAを作りたい方、向けです。
注意:JS-Fiddleは使いません。あくまでローカルでの構築です。
注意:VueのSyntax等は触れません。あくまで環境構築記事です。
###背景
自分の大学では無料のサーバが全生徒に用意されているのですが、権限等々の問題からnodeの環境を構築することができず、htmlやCSS程度しか実行することができません。就活も進む中、せっかくなのでプロフィールページのようなものをSPAで作りたいと思うものの、わざわざアクセス数などしょうもないページを有料で作るのもなんだかなということで、この制約の多い環境でもSPAを作ろう!という意図の下、このような技術を得る経緯となり
TypeORMのMigrationでCannot use import statement outside a moduleエラーの対処法
## TL;DR
あまり綺麗ではないですが、これで解決しました。
`typeorm`コマンドを使用せず、直接`ts-node`で`typeorm`を呼び出します。“`bash
$ ts-node ./node_modules/typeorm/cli.js migration:generate -n ‘User’
“`NestJSを使用しているときにこのエラーに遭遇した場合は、ページ下部の[ormconfig.jsonの書き換え](#手順3)を試してみてください。
## よくみたらドキュメントに書いてあった…
* [TypeORM > If entities files are in typescript](https://typeorm.io/#/using-cli/if-entities-files-are-in-typescript)
ドキュメントの推奨している方法だと、、、
### STEP 1
ts-nodeをグローバルにインストール“`bash
$ npm install -g ts-node
“`### STEP 2
`package.j
画像をたくさん読み込む
##画像の取り込みをコントロールする
“`javascript:javascript
var images = document.getElementsByTagName(‘img’);
var count = 0;
for (var i = 0; i < images.length; i++) { var img = new Image(); img.onload = function() { count += 1; } img.onerror = function() { count += 1; } img.src = images[i].src; }; var waiting = setInterval(function() { if(count == images.length) { clearInterval(waiting); ここに画像を取り込んだ後の処理を書く } }, 100); ``` ----------------------------- 参考 https://note.affi-sapo-sv.com/j
JavaScriptでPythonのrange関数を実装する
# はじめに
これらと同じことをJavaScriptでやる。
“`py
for i in range(10):
print(i)
“`“`py
# [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
list(range(10))# [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
list(range(1, 11))# [0, 5, 10, 15, 20, 25]
list(range(0, 30, 5))# [0, 3, 6, 9]
list(range(0, 10, 3))# [0, -1, -2, -3, -4, -5, -6, -7, -8, -9]
list(range(0, -10, -1))# []
list(range(0))# []
list(range(1, 0))
“`# 仕様
– すべて数値型の range(end) と range(start, end[, step]) の引数を受け取る。
– 渡された引数がない場合はエラーを投げる。
– 最初に載せたPythonのコードと
JavaScriptで簡単なダークモード切替機能を作る
# 概要・目的
こんにちは、プログラミング初心者です。
今回はHTML&CSSとJavaScriptのDOM操作だけで簡単に実装できる、夜目に優しいダークモードを搭載する方法を紹介したいと思います。## ダークモードって?
一般的なWebサイトは、背景が白、文字色が黒を基調とした配色になっています。今ご覧になってるQiitaもそうですね。
それに対してダークモードとは、主に背景が黒、文字色が白を基調とした配色です。目に優しい・見やすいなどの特徴があり、YoutubeやGoogleのアプリ、iPhoneのメールボックスなどでダークモードへの切替ができるようになってます。
一見、実装するのが難しそうにも思えますが、普通のWebサイトであればCSSとJavaScriptだけで簡単に実装できると思ったので、今回はその紹介・解説をいたします。### 実装環境
– 対象: HTMLとCSSで制作したWebサイト
– 実行日: 2021年10月6日
– 環境: windows10、Chrome#① 元サイトの準備
今回、記事を書くに至って紹介用のサイトを用意しました。
Angularでのルーティング設定とHTTPステータス404(Not Found)対策
お勉強したのでメモ書きです。
主にAngularでのHTTPステータス404の対策について記載しているので、興味があれば読んでみてください。[参考(Angular公式サイト)](https://angular-jp.translate.goog/guide/deployment?_x_tr_sl=en&_x_tr_tl=ja&_x_tr_hl=ja&_x_tr_pto=nui,sc)
[参考のなったサイト](https://weblabo.oscasierra.net/apache-rewritecond-base/)
[参考のなったサイト2](https://www.webdesignleaves.com/pr/html/htaccess.html)# ルーティング
ルーティング情報をRoutes配列で定義する
pathやredirectTo、ガード等を定義できる
ここではroutes配列でルーティングを定義している“`app-routing.module.ts
import { NgModule } from ‘@angular/core’;
import { Rou
生JSでハンバーガーメニューを作ろう
## はじめに
過去にjQueryで実装したハンバーガーメニューを生のJavaScriptに書き換えた。
備忘録的な意味も込めて書いていく。
~~実はjQueryほとんど学習してないない~~
~~使わないから~~## 仕様について
今回作成したハンバーガメニューはスマホ時のみ表示
aタグのhref属性に移動したいidを記入する
\#とだけ記入すると画面最上部へスムーススクロールする
という条件で作成しています。## コード
*jsだけだとどうしようもないのでhtmlとsassも貼っておく*
**HTML**
“`html
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関連のことを調べてみた