読者です 読者をやめる 読者になる 読者になる

社会人から始めたプログラミング

プログラミング、エンジニアに関することでの備忘録、シェアしたい情報などを共有するためのブログです。

Angularのui-selectでバックスペース/デリートのキーを押すと選択されていた内容が消えてしまう話。

Angularのui-selectを使っていて、
セレクターにて一つを選択するとき、バックスペースでの削除ができてしまうと困るという場合がある。
(選択肢として、空欄を選べないようにしているセレクターなど)

キーボード操作のイベントを制御すればいいかなと思っていじってみるも、
ui-selectのライブラリーをいじらなきゃだめな気配…

ということで調べてみたら、
やっぱりissueとしてgithub上で議題として取り扱われていることを発見!

最初に見つけたのがこちらのgithubページ。
github.com


そして、修正が入ってmasterにマージされているのがこちらのよう。
feat(uiSelectSingleDirective): add an option to avoid backspace model reset by pierregaste · Pull Request #1736 · angular-ui/ui-select · GitHub


だがしかし、まだリリースのバージョンには含まれていないようです。(2017年3月初旬)
masterにマージされている内容を見ると、
デフォルトが、backspace-reset="true"でバックスペース/デリートで削除不可能になるようです。
(ui-selectで選択肢が一つのときのはなし。複数の選択肢を選ぶときはバックスペース/デリートできる。)

brew upgrade rbenv ruby-buildしてもインストールしたいrubyのバージョンがrbenv install -lのリストに上がらない場合の対処法

Mac OSをSierraにしたあと、rubyのバージョンを上げるときにハマったときのメモ

Tags: Homebrew, ruby, rails, mysql, bundler, gem

困ったこと

インストールしたいrubyのバージョンがrbenv install -lのリストに上がらない…
から入れたいrubyのバージョン2.2.6が入らない…

対策

Homebrewを使って、ruby-buildとrbenvを入れていたので、

brew upgrade rbenv ruby-build

したらなんとかなるかと思いきや行かないので色々調べたら、

私の場合はこれで行けました。

brew uninstall ruby-build —force
brew install ruby-build

(私はbrew uninstall ruby-build —forceでできなかったので → brew uninstall --ignore-dependencies ruby-build)

他の方法は参考にさせていただいたこちらのスタックオーバーフローにまとまっています。
http://stackoverflow.com/questions/23702954/rbenv-install-list-does-not-list-version-2-1-2

あとはrubyのgemfileを管理するbundlerを使っていたので、

gem install bundler

してから、bundle installとかです💡
ただ、bundle installで
mysqlに接続できないよとエラーが出たので、エラーメッセージの指示通り、

brew install mysql

で解決。

めでたしめでたし。

さて、開発再開!

_.map()ではundefinedはスキップできない

 javascriptでunderscoreJSをつかっているのですが、
 _.map()ではundefinedはスキップできないので、

 var array = _.map(somthing)
 array.filter((n) => { return n != undefined });

 としてfilterして_map()の中にできてしまったundefinedを消してあげる。

 他のはこちらを参考にどうぞ。http://stackoverflow.com/questions/281264/remove-empty-elements-from-an-array-in-javascript