Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 最近聞かれなくなってきた Isomorphic JavaScript ですが、気付けば今は Universal JavaScript と呼ばれているらしいです。 そもそも日本語の記事が少なくて困ったので、色々調べたものを整理するために書きます。 とても簡単にふわっとまとめると、以下のような感じ。 SPA で問題となるのがSEO対策、初回ロード時間 SSR はこれを解決してくれるが、クライアントとサーバでロジックの重複が発生 同じコードをクライアントとサーバで実行しよう = Isomophic! 同じコードをネイティブアプリやデスクトップ
こんにちはGAOGAOの代表をしております @tejitak です。GAOGAOアドベントカレンダー 17日目の記事です。GAOGAOのスタートアップスタジオにて、最近お手伝いしている海外のお客様案件にてTypeORMを導入しています。 今回の記事では、TypeORMとはなんぞや?という方を対象として、まだ比較的日本語記事が少ないTypeORMについてのご紹介します。 Node.jsのORM Node.jsでサーバーサイドを実装する際にはExpressを使うことが多いと思います。ExpressはサーバーサイドのWebフレームワークで、データベースを扱うORMは自由に導入することができます。以下代表的なORMを紹介します。 mongoose 公式ドキュメント: https://mongoosejs.com/ MongoDBはJavaScriptとの相性の良さから昔からNode.jsの多くのプ
> node -v v11.0.0 > electron Electron 4.0.0-beta.5 - Build cross platform desktop apps with JavaScript, HTML, and CSS Usage: electron [options] [path] A path to an Electron app may be specified. It must be one of the following: - index.js file. - Folder containing a package.json file. - Folder containing an index.js file. - .html/.htm file. - http://, https://, or file:// URL. Options: -i, --inter
kintone の定期実行をAlibaba Function Compute (node.js)で試してみました。 今回は 1時間ごとに kintone アプリのレコード件数を取得する処理です。 基本的なしくみは、Azure Functions など他のサーバーレスと同様で簡単に定期実行が実現できます。 開発環境 kintone 連携の Alibaba Function 開発メモと同じです。 kintone API トークン kintone アプリ設定画面で、REST API で使用するAPI トークンを発行します。 試用するAPI によって、アクセス権を設定できます。 Function Compute の構成 今回は定期実行をするため、タイムトリガーを定義します リージョン :東京、上海などが選択可能 サービス:Function Compute のリソースを管理するための単位 関数:シス
TL;DR ndenv を入れて、 hexo のプロジェクトフォルダの node のバージョンを 6 に戻した。 状態 他のプロジェクトで必要だったため、 homebrew で node を upgrade した。 すると hexo の基本的なコマンドは実行されているらしいが deploy がうまくいかなくなった。 deployer には s3-cloudfront を利用していた。 試行錯誤 deployer を変えてみた -> ダメ 普通の s3 にして cloudfront でのキャッシュクリアは手動にしようとした。 やってみたところ s3 へのデプロイ自体がうまくいっていないようだった。 node のバージョンを戻したい -> ムリ 新しいプロジェクトで必要なので戻せない。 複数バージョンを使えるようにしよう nodebrew -> 毎回コマンドラインで切り替えるの面倒 ndenv
最新版=>フロントエンドのテストについて考える 現在、新規プロジェクトで、Nuxt.js+TypeScriptを使ったSPAの開発を行っています。この記事では、そういったケースにおいての、Nuxt.jsアプリケーションでのテストに対する考え方と、その方法を紹介します。 TL;DR ユニットテスト/結合テスト=>Jest UIテスト=>Storybookをベースに、Jestで足りない部分を補う プロジェクトの技術スタック Nuxt.js Vue.js Vuex TypeScript Docker テスト種別の整理 簡単に、今回登場するテスト種別の整理をしておきます。より詳しくは、ググったり書籍を読んだりするのをおすすめします。 ユニットテスト - 個別の関数やクラス、コンポーネントをテストする。 結合テスト - 複数の関数やコンポーネントをつなぎこんでテストする。 UIテスト - ブラウザを
はじめに Alexaスキルの作成は大きく分けて2つからなります。 対話モデルの作成 スキルの実際の処理部の作成 対話モデルはAlexa開発者コンソールからグラフィカルに作成するのが一般的です。 (画像は公式のチュートリアルより) 作成された対話モデルに従ってインテントが作成され、それがJSON形式でスキルの処理部分に渡されます。 このスキルの処理部分がインテントハンドラとしてAWS Lambda関数として実装される部分になります。 実装に使うことができる言語はいくつかありますが、公式のチュートリアルではNode.jsで説明されているので素直にNode.jsを選ぶと良いでしょう。 この記事でもNode.jsで話をします。 さて、この記事ではLambda関数として作成するインテントハンドラの基本的な構成について説明したいと思います。 コード部分はぱっと見だと複雑そうですが、少し落ち着いて見てみ
概要 DatePicker(日付選択コンポーネント)の情報は数多くありますが、時間まで表示するコンポーネント「DateTime(Picker)」の情報になると数少ないため、調べてまとめた情報を載せます。 環境 React.js(16.2.0) moment(2.22.2) react-datetime(2.16.2) DateTimePickerの代用を探し求めて 過去に、ReactではDateTimePicker(react-bootstrap-datetimepicker)というコンポーネントがあったのですが、 現在はDeprecatedされており、最新のReact.jsで動かそうものなら多数のエラーに阻まれて動かせない状態。(ECMAのバージョンなどが新しくなったことが理由で動かなくなったようです。) これの代わりになるものを探そう、ということで色々と模索してみました。 時間(秒)ま
45988c2 [2018/10/28 22:27:16] initial commit 3d114ef [2018/10/28 22:29:38] add ng-cli-pug-loader 4e4edc7 [2018/10/28 22:32:00] template changes to pug 27d83e2 [2018/10/28 22:52:44] create board 3fbbdb7 [2018/10/28 23:12:38] declare style white and black 20fe7c1 [2018/10/28 23:18:03] init board edd03af [2018/10/28 23:24:48] implements when on click cell, put my-trun cell 6a074a4 [2018/10/28 23:52:5
はじめに 機密情報をコミットしないようにgit-secretsの設定をしようとしたところ、既にprecommit用のNode.jsライブラリhuskyがインストールされていたため、コンフリクトしてgit-secretsの設定ができませんでした。 どっちとも使いたかったので、それぞれ動くように工夫してみました。 2019/07/10 追記 会社の @aki77 さんが、もっと良い方法を見つけてくれたので、 そっちを「方法1」として追記しました! 方法1: husky内でgit-secretsを呼び出す gitのhooks内では、デフォルトのままhuskyだけが呼ばれるようにしておき、 huskyでのチェック項目の1つとして、git-secretsを呼び出します。 lint-stagedも併用します。 git-secretsをグローバルにインストール
要約 Node.jsでスクレイピングする jQueryを利用する Promise,async/awaitで同期処理にする。なお同期処理に悪戦苦闘した。難しい・・・ 動機 自然言語の機械学習用データ集めのため、スクレイピングする必要があった。 Pythonでばかりコーディングするのも芸がない。DOMを操作するんだから、jQueryを使ってやろう。 Node.jsは前から興味があったけど、初めて触る。JSのお勉強がてらやってみるか。(※ワタクシのJavaScript知識は10年以上前で止まっていましたので。プロミス?なにそれ、消費者金融?って状態でした) やりたいこと とある、Webサイトの記事のURLを取得したい。 Webサイトには一覧ページがあり、1ページに50件程度の記事一覧がある。ページはパラメータで変えられる(https://hoge?page=2のような形で) 記事一覧の各ページか
'use strict'; const firebase = require("firebase"); const config = { apiKey: 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', authDomain: 'xxxxxxxxxxxxxxx.firebaseapp.com', databaseURL: 'https://xxxxxxxxxxxxxxxx.firebaseio.com', projectId: 'xxxxxxxxxxxxxxxxxxxxx', storageBucket: 'xxxxxxxxxxxxx.appspot.com', messagingSenderId: 'xxxxxxxxxxx' }; firebase.initializeApp(config); const Youtube = require('youtube-n
import * as React from 'react' import App from '../containers/App' interface Props {} const Html: React.SFC<Props> = (props: Props) => { return ( <html> <head> <title>App</title> </head> <body> <div id="app"> <App /> </div> <script src="/client.bundle.js" /> </body> </html> ) } export default Html import * as path from 'path' import * as express from 'express' import { Request, Response } from 'ex
前 v5.7.0 | 次 v5.9.0 ESLint v5.8.0 released:https://t.co/xJQtySuzeP — ESLint (@geteslint) October 26, 2018 ESLint 5.8.0 がリリースされました。 小さな機能追加とバグ修正が行われました。 質問やバグ報告等ありましたら、お気軽にこちらまでお寄せください。 🏢 日本語 Issue 管理リポジトリ 👫 日本語サポート チャット 🏢 本家リポジトリ 👫 本家サポート チャット 🚀 本体への機能追加 #11010: Linter.version property Linterコンストラクタにversionプロパティが追加されました。ESLint のバージョン文字列 (例: "5.8.0") を保持します。 従来は Linter からバージョン情報を取得するには new Lin
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く