TypeScript2からのReactとnon-null assertion

TypeScript2からコンパイルオプションの strictNullChecks で、nullability をチェックできるようになった。 最近になってこのオプションを有効にしたら意外と修正するところが多かったのでメモ。 TypeScript1系の時は↓の様に書いてました。 import * as Rea…

go言語をインストールしてvimで保存時にコードフォーマットを走らせるまでの設定

Macの環境でgo言語をインストールして、vimでソースコード保存時に自動でコードフォーマットが走るまでの環境設定です。 普段はIDEを使うので、vimでファイル保存時に go fmt を実行させる設定に手間取ってしまったのでメモしておきます。 ※ vim のプラグイ…

AWS CloudFormationでECSを管理するときにハマったこと

CloudFormationでECSを構築したときにハマったメモです。 CloudFormationのテンプレートを書いて AWS::ECS::Cluster AWS::ECS::Service AWS::ECS::TaskDefinition あたりの設定をして、構築しました。 動作確認ができたので、AWS::ECS::Service の設定を更新…

nodeのバージョン管理にnaveを使おうと思ったら上手くいかなかったのでメモ

basherからnaveをインストールしたあと、 $ nave use latest を実行したところ、nodeのインストールに失敗した。 $ nave cache clear したら直った 環境 AWS EC2 OS Debian Jessie AMI ami-dbc0bcbc 問題が発生した手順 basherインストール naveインストール…

MacにVisualStudio for Mac を入れてみたけど、dotnet coreが動かなかった

Macに VisualStudio for Mac を入れて、プロジェクトの作成から Console Application を選びました。 プロジェクトは作成されたのですが、リストア・ビルドが成功しませんでした。 $ which dotnet dotnet not found となり、どうやらdotnetコマンドが使えま…

AWS CloudFormationでインフラを構築するときに CAPABILITY_NAMED_IAM というエラーが出た

aws

AWS CodePipeline + CloudFormation でインフラをソースコードで管理しようと思い、cfn-ci-cd-demo というRepositoryをベースにいろいろ試してみました。 github.com IAM Role を作るときに、 Requires capabilities : [CAPABILITY_NAMED_IAM] というエラー…

esaの任意ページを素早く表示するesajump公開しました。

Chrome Extensionで esajump というものを公開しました。 chrome.google.com esajumpはドキュメント共有ツールにesaで、任意の番号のページを素早く表示することを目的としています。 esa.io たまに、口頭で「esaの何番です」といった形で共有されるケースが…

AWSのCloudFormationでs3バケット名変更

aws

CloudFormationからs3バケット名を変更しようとした時の注意メモ CloudFormationのテンプレートでs3を構築/管理しているときにバケット名を変更しようとします。 変更時の動作は 新しく名前のバケットを作成する 古い名前のバケットを削除する の流れのよう…

windows10 + docker for windows + intellij idea

windows環境のintelliJ IDEAでdocker integrationを使おうとしたときに、接続できなかった。 docker for windows 側の設定を直すことで解決できたのでメモしておく。 前提条件 intellijのdocker integrationプラグインを追加 解決方法 docker for windows の…

docker for windows で docker pull に失敗する場合の対処方法

docker for windows にて docker pull に失敗する場合の対象方法について dockerイメージを取得しようとすると下記のエラーが出た $ docker pull debian Using default tag: latest Error response from daemon: Get https://registry-1.docker.io/v2/: net/…

.NET Core コンソールアプリで日本語出力する方法

Windowsでコンソールアプリを作成し実行すると日本語が文字化けする。 Consoleの出力文字コードがUTF8固定になっていることが問題の様です。 対応方法 NuGetから System.Text.Encoding.CodePages をインストールする Main関数の先頭に下記を追加 Encoding.Re…

awsのec2に自動デプロイする(github+circleci+CodeDeploy)

githubにpushしたとき、自動でデプロイし、失敗した場合はslackに通知する設定方法のメモです。 期待する動作 githubにpush circleciでビルド CodeDeployでデプロイ もしデプロイに失敗したらslack通知 設定するもの s3 EC2 CodeDeploy circleci SNS lambda …

TypeScriptでReactを書くときはStateのパラメータに?を付ける

TypeScriptでReactを書いているとき、Stateに複数パラメータを用意した時に ? を付けてオプションパラメータにします。 そうしないと、setState の更新時に全てのパラメータを更新しないといけなくなります。 なので、必ず付けろというよりは、パラメータを…

sendgrid-phpで添付画像を付けてメール送信する方法

php

phpでメール送信する方法の一つとしてSendGridがあります。 github.com 添付ファイルを付けてメール送信する方法についてのメモです。 ※ 前提として、composerを使用して、sendgrid-phpをインストールしているものとします テキストのみのメール

AWS CloudWatch Logs で選択可能なOSについて

以前は debian にインストールできなかった、 AWS cloudlogs のインストール可能なOSが増えていました。 regionの選択肢も増えて、アジアパシフィック (東京) ap-northeast-1 も選択できるようになっていました。 もともとは下記方法でawslogsを使おうとして…

.NET Core でコマンドラインからWebアプリのプロジェクトを作成する

Webアプリのテンプレートからプロジェクトを作成する。 $ dotnet new -t Web 例 $ mkdir hoge $ cd hoge $ dotnet new -t Web $ ls -al .bowerrc Controllers Program.cs Startup.cs Views appsettings.json bower.json bundleconfig.json hoge.csproj web.c…

.NET Core の開発環境 - その2

以前に Macで使える .NET Core 用IDEをいくつか調べてました。 naughtldy.hatenablog.jp そのときは、 VisualStudio と Rider EAP があるんだな程度の調べ方で済ませていたのですが、両方でプロジェクトを作成して違いがわかりました。 VisualStudio for Mac…

Webpack2ではextensionsに空文字を指定できない

npm install webpack で Webpack2 がインストールされるようになっていたので、試して見たところエラーが出たのでメモ。 エラー Invalid configuration object. Webpack has been initialised using a configuration object that does not match the API sch…

.NET Core でMySQLに接続する

.NET Core にてMySQLに接続したくてその方法を調べてみた。 参考にした記事の手順でできるけど、1点か注意が必要な部分があった。 注意点 portが 3305 になっている 参考 HowTo: Starting with MySQL EF Core provider and Connector/Net 7.0.4 | InsideMySQ…

.NET Core開発で手動でのnuget追加方法

.NET Core を使った開発でVisualStudioを使えない場合Nugetを調べるのが大変だと思います。 MacだとRiderがあるからNugetの参照も上手くいくと思ってたんですが、自分の環境だと、RiderでNugetを検索できるけど参照追加しようとすると失敗してしまうという状…

VisualStudio2015Enterpriseでパッケージが読み込まれない

Visual Studio 2015 Enterprise をインストールして、プロジェクトを作成した時に下記のエラーが表示されました。 'XamarinShellPackage' パッケージは正しく読み込まれませんでした。 参考のURLを見てみると、 http://xvs.xamarin.com/Xamarin.VisualStudio…

async function でfetchをラップする関数を作る

javascriptで async function の使い方を勘違いしていたようなのでメモ。 先に正しく動く例 export class ApiWrapper { public async getResult = (searchText: string) => { let myHeaders = new Headers({ 'Token': '' }); const response = fetch(this.ap…

IntelliJ IDEA で PHP のソースフォルダが見えなくなったとき

PHPのプロジェクトを開いたらディレクトリが見えなくなってしまっていた。 開いているディレクトリの .gitignore などのファイルだけが見えている状態でした。 参考にさせて頂いた、ページを見ると .idea配下のファイルを修正すれば良いと書いてあったのです…

TypeScriptでasync/awaitを使いes5にコンパイルする方法

TypeScriptではasync/awaitを使いつつも、コンパイルした成果物をes5にするための tsconfig.json lib に es2015 を追加する tsconfig.jsonの例 { "compilerOptions": { "module": "commonjs", "target": "es5", "noImplicitAny": false, "sourceMap": true, …

.NET Core の開発環境

気づけば、 .NET Core の開発環境を作る方法やIDEなどが充実してました。 開発環境構築 こちらの手順に従って簡単にインストールできるようになっています。 .NET - Powerful Open Source Development Windows Linux Mac Docker でのインストール方法につい…

vscodeでコード整形

jsonなどのコード整形をしたいときのショートカットキーを忘れてしまうのでメモ コマンド shift + alt + f 注意点 起動時のデフォルトで開かれてるファイル(Unitled-1)ではコマンドを入力してもコード整形されないので注意。 jsonなら拡張子 .json である…

ReactでのHTML描画について

Reactで文字列のHTMLを文字列として描画するのではなく、HTMLで描画する。 方法 dangerouslySetInnerHTML を使う。 <span dangerouslySetInnerHTML={{__html: htmlString}}> の様な形で、htmlString にはHTMLが文字列で代入されています。 こうすることで、 htmlString の値を文字列としてではなく、HTMLとして表示</span>…

vscodeでMarkdownプレビュー

visual studio code (vscode) では、簡単に下図のようにMarkdownのプレビューができます。 コマンド Macの場合 command + shift + V 補足 上記コマンドでプレビューを表示することができます。 ですが、リアルタイムプレビューが可能なのは拡張子が.mdの場合…

mac の .Net Core でapi作成

windows の場合は、visualstudio でプロジェクトのテンプレートを作成すれば良さそうですが、macの場合は visualstudio code(VScode)にはプロジェクトのテンプレートを作成する機能は無いため、どうやって作るのか調べてみました。 前提条件 Node.js がイ…

macで始める .Net Core

いつのまにか簡単な手順で動作確認までできるようになっていました。 基本的に公式HPの手順に従えば動作確認まではできるようになってました。 .NET - Powerful Open Source Development 前提条件 Homebrew がインストールされていること brew.sh 手順 1. …