日々精進

新しく学んだことを書き留めていきます

2015-01-01から1年間の記事一覧

PCからiPhone内の写真を削除しようとすると「この項目を削除するアクセス許可がありません」エラー

IT

iPhoneの設定のiCloudの「写真」をオフにすると削除出来るようになった。 なぜこれで削除できるようになるかはよくわからないが、iCloudが有効だと写真を削除するとiCloud上の写真も削除されるから削除権限を厳しくしてるのかも? 参考:

AWSであるVPC内のEC2とインターネット経由で通信できない

AWS

VPCにインターネットゲートウェイを接続してないことが原因だった。 インターネットゲートウェイとは仮想ルーターでこれがないとインターネットと通信できないらしい。 VPCちゃんと勉強しないとな。。 参考:

Windows Server 2012 R2 の IE でファイルをダウンロードできない

IT

Windows Serverはセキュリティが厳しいのでデフォルトではファイルをダウンロードできない。 以下の設定をするとダウンロードできるようになった。 セキュリティ強化の構成をOFFにする セキュリティ設定でファイルのダウンロードを有効にする

ChromeリモートデスクトップではファイルをリモートPCにコピーする機能が無いのでGoogleドライブなどを使って共有する

IT

ドラッグアンドドロップでファイルをリモート側に送るとかできたら便利なんだけどなぁ。 もしくはMSのリモートデスクトップのようにローカルのフォルダをドライブとしてマウントできるとか。 そういう機能は無いようなのでGoogleドライブなどを使うしかなさ…

Googleマイマップをコピーする方法

IT

一旦KMLファイルにエクスポートし、それをインポートするとコピーできる。詳細な手順は参考サイトを参照。 こういう方法でなく、コピーするボタンとかあってもいいんじゃ・・・ 参考:

Chromeリモートデスクトップでリモート側のスクリーンショットを撮る

IT

リモートデスクトップウィンドウの左上にあるハンバーガーアイコンをクリックすると「PrtScnを送信」というメニューがあるのでそれをクリックするとスクショが撮れる。

複数のPC・Macを一つのキーボード・ディスプレイで使用する

IT

USBやD-Subケーブルを繋ぎ直すのは面倒なので、↓の切り替え器を使っているが便利です。 iBUFFALO パソコン自動切替器 BSKMR201出版社/メーカー: バッファロー発売日: 2010/10/14メディア: Personal Computers購入: 2人 クリック: 10回この商品を含むブログを…

普段ATOKを使っているが、時々勝手にMS Office IMEに切り替わって困る

IT

「テキストサービスと入力言語」ウィンドウでMS OfficeIMEを削除しても直らなかった。 以下の手順で直った。 コントロールパネルの「プログラムの変更と削除」からMS OfficeIMEを削除 再起動すると「テキストサービスと入力言語」ウィンドウにMS IMEが現れる…

【依存関係解決】wiredepはdeprecatedなのでmain-bower-filesを使う

web

アプリが依存するライブラリを読み込むのにRequireJSを使うことが多かったけど、 色々辛いのでindex.htmlにscriptタグを埋め込むソリューションを使ってみることにした。 今はmain-bower-filesを使ってビルド時にindex.htmlにscriptタグを埋めればいいらしい…

Angularでdocument readyイベントを発生させる

web

$document.readyメソッドにready時のイベントハンドラを渡せばいい。 参考:

AngularJSの$location.path(url)で画面遷移する際に表示している画面のurlと同じurlを渡すと画面遷移しない

web

どうもAngularJSが同じPathの場合routingをキャンセルしているっぽい。 まあ普通はそれでいいんだけど・・・今回はそのような場合に画面をリロードするという仕様があったので pathの最後に/を付けて無理矢理画面遷移させることにした。 あ、でも今気付いた…

AngularJSで複数キーによるソートをorderByフィルタで行う

web

以下のようにソートキーを配列でorderByに渡すとできる。 <div ng-repeat="division in divisions | orderBy:['group','sub']">{{division.group}}-{{division.sub}}</div> 参考: stackoverflow.com

gitコマンド実行時に“Insecure world writable dir /usr in PATH, mode 040777”エラー

IT

原因は/usrが$PATHに入っていて、かつowner権限以外でwrite可能だから。 悪意のあるユーザが/usr/lsのような名前で実行ファイルを置くと、 攻撃対象のユーザの権限で危険なプログラムを実行させることができるというセキュリティリスクがあるのでowner以外の…

ng-showとng-ifのパフォーマンス観点での違い

web

ng-showはElementを残したままdisplay: noneで非表示にするのでキャッシュが効く。よって初期表示は遅いが再表示は速い。 ng-ifはその逆で、初期表示は速いが再表示は遅い。 参考: qiita.com

ng-optionsをやめてtext bindingだけにすると超速くなる

web

AngularJSは何も考えずに作ると結構重くなる。。 <select ng-options...>タグが100個ぐらいある画面をIEで開くと操作可能になるまで20秒ぐらいかかった。 ただ、画面仕様的になぜか入力することは無く常にselectタグはdisableになっている仕様だったので、 h5タグで書き直したら20</select>…

Angularのng-optionsでリストに表示される名前をfilterで加工する方法

web

以下のように、リストに表示する名前に続けて | filter を書けばいい。 <select class="form-control" ng-model="selectedOption" ng-options="option.name | filter for option in category.options"></select> 参考: stackoverflow.com

Bootstrapの<div class="row">が画面より大きい理由

web

rowクラスは左右に-15pxのマージンを持っており、rowの親Elementより大きい。 その理由は、列の左右にガター領域を確保するため。グリッドFWはすべてガターがあるらしい。 うーん、まだグリッドシステムとBootstrapをちゃんと理解できてないな。。 参考: st…

Bootstrapで<div class="row">をoverflow-y: auto;なdivの中に置くと横スクロールバーが出る

web

原因はrowクラスが左右に-15pxのマージンを持っており、自体は親Elementからはみ出しているため。 以下によると、新しいバージョンのBootでは解決しているようなので、Bootstrapのバージョンを上げたら直る。 stackoverflow.com それが難しいようなら以下を…

focusの当たっている要素を取得する方法

web

// フォーカスが当たっている要素を取得する var $focused = $(':focus'); // jQueryを使わない場合 var focused = document.activeElement; // フォーカス当たっているかどうかを判定する var hasFocus = $('foo').is(':focus'); // jQueryを使わない場合 e…

Angularの$http.get(...).successと$http.get(...).thenでは渡される引数が違う

web

ちょっと勘違いしていたんだけど、successの定義は以下のようになっていてdataにhttp bodyが入る。 success(data: any, status: number, headers: ng.IHttpHeadersGetter, config: ng.IRequestConfig) thenの場合は以下のようにresponseが引数として渡される…

selectタグをクリックして表示されるリストの下にカーソルが指定されているタグがあると、マウスカーソルが変わってしまう

web

例えば、cursor: not-allowedが指定されているaタグがリストの下に重なっていると、 マウスカーソルが禁止カーソルになってしまい、「リストのこの項目はクリックできないのか!?」となってしまう。 selectタグのoptionのリストはOSが描画していてここにカ…

Angular-UIのmodalダイアログのウィンドウの外側のグレーの部分をクリックしてもダイアログが閉じないようにする

web

modalを開く時のオプションで以下を指定すると閉じなくなる。 var modalInstance = $modal.open({ ... backdrop: 'static', ... }); 参考:

Angularでcontrollerからform.$dirtyにアクセスする

web

scope経由でアクセスできる。 function Ctrl1($scope,$rootScope) { alert($scope.myForm.$dirty); } 参考:

windows用のコンソールはConEmuが良さそう

IT

windowsはなんでまともなコンソールが無いんだと思っていたが、 ConEmuは割と良さそう。標準のコマンドプロンプトと比較していい点は以下。 文字の選択、コピー、ペーストが普通にできる。逆になんでコマンドプロンプトはできないんだよ。。 タブが使える シ…

SourceTreeでコミットメッセージなどでフィルタをかける

IT

SourceTreeのウィンドウ左下あたりに「ファイルステータス」「ログ」「検索」というタブがあるが、 「検索」をクリックすると検索窓が出てくる。 意外と気付かなかった。。 参考:

Angular 必須チェックをするかどうかを動的に設定する

web

普通にrequired="true"と書くと常にrequiredになってしまう。ng-required='!contact.email'のように書くと 動的に必須かどうかを変更出来る。 参考:

Angular directiveのlink関数の引数の型

web

以下の型でよい。 link: function(scope: IMyDirectiveScope , elem: JQuery, attributes: ng.IAttributes, ngModel: ng.INgModelController) scopeの型だけangularのbuiltin型でない。scopeの型は自分で定義した方がいいのかなぁ。。めんどいからつい型をIS…

JavascriptでURIエンコード

web

3つの関数がある。 encodeURI encodeURIComponent escape これらの違いはencodeしない文字が違うだけ。詳細は下記サイト参照。なるほどー。 参考: http://logic.moo.jp/data/archives/438.html

AngularのorderByフィルタで文字列を数値としてソートする

web

例えば、文字列として辞書順にソートするといかのようになる。 1 11 2 これを以下のようにしたい。 1 2 11 単に以下のようにstringをnumber型に変換するだけでよい。 ng-repeat="friend in friends | orderBy:Number(friend.id)" 参考:

Angular directiveに値を文字列でもAngular式でも渡せるようにする

web

実は@でbindingすればできる。 $scope: { position: '@' } これだと文字列としてしか渡せないと思っていたが、以下のように{{}}で囲むと{{}}の中を評価した値がdirectiveに渡される。 <my-directive position="{{right}}"></my-directive> じゃあ= bindingいらないじゃんという気もする。 参考: