[JavaScript | ES6] Vuexで … のシンタックスでエラー。ES6 で見慣れないシンタックスがあったとき

2017/06/17

こんにちは。きんくまです。

ES6のシンタックス、時々見慣れないものとかがあります。

VuexというReduxのVue版があるのですが、真似してコード書いたらエラー。

そんでサンプルのソースを見ていたら、どうやらBabelのプラグインを入れてるみたい。

>> Object rest spread transform

インストールします

npm install --save-dev babel-plugin-transform-object-rest-spread

.babelrc の plugins の配列に追加します。presetsのところはもともと書いてあったやつだと思ってください。

{
  "presets": [
    ["env", { "modules": false }],
  ],
  "plugins": [
    "transform-object-rest-spread",
  ]
}

サンプルコード

これはどんなものかというと、こんな感じに、… の3つのピリオドを続けてうつシンタックスが追加されます。

let obj1 = {
    a:"name"
};

let obj2 = {
    b:'hello',
    obj1
};

let obj3 = {
    b:'hello',
    ...obj1
};

console.log(obj1); //-> {a: "name"}
console.log(obj2); //-> {b: "hello", obj1: Object}
console.log(obj3); //-> {b: "hello", a: "name"}

obj2の方は、obj1というキーにobj1そのものが値が入るのに対して、
obj3の方は、obj1の中身のaというキーがそのまま入っています。

これの面白いところは、値がコピーされて入るところです。

この投稿の続きを読む »

LINEで送る
Pocket

[iOS] フォルメモを2.0.0にアップデートしました。1万ダウンロードされました

2017/05/22

こんにちは。きんくまです。

フォルダで整理できるメモ帳、フォルメモを2.0.0にアップデートしました。

>> フォルダと メモ帳 – フォルメモ

new_notes_and_folders_app_icon

今回は、DBの更新中に落ちるなどといったバグ修正とか、複数写真が選べるようになったりとかいろいろやりました。
swift3化自体は昨年末に終わっていたのですが、年明けから受託案件が忙しかったのと、今回はいろいろと大変そうだったので開発が気乗りしなくてだいぶ時間がかかってしまいました。

ただけっこうレビューを書いて下さるユーザーさんがいたり、メールで要望いただりして、「何とかアップデートせねば」と思い頑張りました。

個人開発は意外とこのモチベーション維持が大切だったりします。
アプリ内課金してるから開発するのは当然だろう!と言われてしまうとその通りなのですが、まあいろいろとありますね。

1万ダウンロードされました

いま調べたら、1万4千ダウンロードぐらいでした。ありがとうございます。

ジッピー電卓は、半分が中国なのですが、フォルメモは90%が日本でした。
言語は英語と日本語版だけなのでそんな感じです。

というわけで、フォルメモをよろしくお願いします。

>> フォルダと メモ帳 – フォルメモ

new_notes_and_folders_app_icon

LINEで送る
Pocket

[iOS|Swift3] ひらがな、カタカナ変換を文字列表で行いたい

2017/05/18

こんにちは。きんくまです。

iOSはswiftのバージョンがあがるたびに、今まで動いていたコードが動かなくなることが多いです。
swift3で一番困ったのが、!のオプショナルの文字列化。

以前は

let str:String! = "hello"
print("\(str)") //-> hello 

こんな感じに、!のオプショナルは普通のStringと同じように文字列化していました

でもswift3だと

let str:String! = "hello"
print("\(str)") //-> Optional("hello")

とかいう感じに、Optional( xx ) という文字列が加えられちゃってました。
おいー!挙動違いすぎるぞー(泣)!
フォルメモのアップデート中、結構これにやられてました、、。エラーが出ないで動いちゃっているところがこわい。

これからは@IBOutletのところ以外は ! のオプショナルは使わないようにします、、。

それで本題です。

ひらがな、カタカナ変換を文字列表で行いたい

ひらがな < - -> カタカナ の変換は swift2 でこちらで紹介されていたものを使っていました。
Stringクラスにひらがな・カタカナ変換をextensionする

ただ、これも上であげたOptionalの挙動のせいでうまく動かなくなってしまいました。
なので、今後swiftのバージョンが上がってもそんなに修正しなくてすむような愚直なバージョンを作ることにしました。

この投稿の続きを読む »

LINEで送る
Pocket

[iOS] AlertやModalを閉じるときに上に重ねてインジケーターを表示したい

2017/05/12

こんにちは。きんくまです。
今回は参考ページの紹介です。

私はフォルメモというメモ帳アプリを開発しています。
最近ようやく半年ぶりくらいにアップデートの作業を進めています。
>> フォルメモ – フォルダつきメモ帳、日記

現在ストアに出ているバージョンだとDBの操作をしていると更新するデータが多かったりする場合、処理が重いため画面が止まってしまいます。非常にユーザー体験的にマズいです、、。

あと、いろいろとメモやフォルダの移動や削除を行うときの動作があやしかったりして、プログラムを全体的に見直して修正しています。おかげで、だいぶ良くなってきました。(結構大変だった、、)

それで、さきほどの処理が重くて画面が止まってしまうときの対策として、DBの操作はメインスレッドとは別スレッドで行い、その間メインスレッドはローディングのくるくるを表示させるというのがあります。
こんな感じ。

progress_hud

くるくるをモーダルで出そうとしたが、、

このくるくるみたいなやつは、ProgressHUDみたいな名前のライブラリでたくさんgithubにあがっています。ただ今回は、くるくる画像を前面に出すだけなので、これぐらいだったら自分で作ってみようと思いました。

それで、出したり消したりする仕組みはできたのですが、困ったのが表示させるところ。
最初はモーダルで出してみようとしました。

この投稿の続きを読む »

LINEで送る
Pocket

[iOS] ジッピー電卓を5.8.0にアップデートしました。中国でランク外になりましたw

2017/04/28

こんにちは。きんくまです。

先日アップデートしたばかりのジッピー電卓なんですが、5.8.0にアップデートしました。

zippy_calc_2_0_0_icon_round
>> ジッピー電卓 – 使いやすい計算機

zippy_calc_2_0_0_icon_round
>> ジッピー電卓 Pro – 使いやすい計算機

前回の記事
>> [iOS] ジッピー電卓を5.7.0にアップデートしました。7万ダウンロードされました

更新内容

今回は以下のアップデートを行いました。
■ NEW! ACボタンを押したときに、全部クリアするかどうかの確認ダイアログを出せるようになりました
■ AppStoreレビューのリンクをクリックすると、アプリが落ちる問題を修正しました
■ iOS10.3.1のiPadで履歴の左右レイアウトが変わらない問題を修正しました(有料版のみ)

ACボタンについては、押すとすぐに履歴と計算入力が消されるのが怖いというユーザーさんの意見があったのでオプションとして追加しました。
自分としては、気軽にサクサク計算できる方が良いと思っているのですが、選択肢としてもあっても良いかなとおもったので追加しました。

レビューのリンクをタップすると落ちるのは全然気がつかなくて、リリース後に気づきましたw
あるとしたらswift2->swift3にビルドを更新したときにおきたんだと思います。同じソースで前は起きていなかったので。
後ほど書くんですが、レビュー大事です。

あと、iPadのレイアウトは有料版のみの対応。
これは、iPad版は履歴の位置を左右にきりかえられるようになっているのですが、なぜかiOS10.3.1だとうまくきかないというもの。(iOS9とか、iOS10.3.1未満だと大丈夫みたい。)

たぶんOSのバグか仕様変更だと思うんだけど、無理やり修正。
無料版で修正ができたので、有料版のチェックをしなかったところ、有料版だと何故か直ってなかったという、、。
こういうことあるんですね。無料と有料は広告の表示/非表示のきりかえがあるので、そこでconstraintの更新がうまくいってなかったのかな?よくわかりません。

中国でランク外に

前回の更新で中国でランク外になりましたw あと、日本も400位くらいまで落ちました。

この投稿の続きを読む »

LINEで送る
Pocket

[iOS] ジッピー電卓を5.7.0にアップデートしました。7万ダウンロードされました

2017/04/24

こんにちは。きんくまです。

ジッピー電卓を5.7.0にアップデートしました。

zippy_calc_2_0_0_icon_round
>> ジッピー電卓 – サクサク計算機!

zippy_calc_2_0_0_icon_round
>> ジッピー電卓 Pro – サクサク計算機!

今回は不具合修正を何点か行いました。

ヨーロッパは、小数点が日本みたいにピリオド(.)じゃなくてカンマ(,)の国が多いみたいです。
123,4 みたいな。
その設定のときに税ボタンを押すと計算がおかしくなっていたので直しました。

以前にたぶんヨーロッパの人だと思うんだけど、バグ報告のメールもらったので直しておこうと。

Swift2からSwift3化自体は去年の秋ぐらいにすでに終わっていたんだけど、年末ぐらいから受託の仕事が忙しくなってしまったので、時間がかかってしまいました。

名前でリジェクト!!

今回は、はじめて名前でリジェクトされました。
2回もされてしまった。

この投稿の続きを読む »

LINEで送る
Pocket

[メモ] SourceTreeで見ている、特定のコミットの特定のファイルをCotEditorで開きたいメモ

2017/04/18

こんにちは。きんくまです。

これまでgitは基本iTerm2からコマンドを叩いて利用していました。(あとIntellJ IDEAのVersion Controlタブも併用)

ただいろいろとコマンドを打つのが面倒になってきたので、試しにGUIツールを使ってみよう!と思って、SourceTreeを入れて見ました。そしたらすごく便利でした!

それで今回は「SourceTreeで見ている、特定のコミットの特定のファイルをCotEditorで開きたい」です。

gitのコマンドでいうとこんな感じになるみたいです。

git show {commitハッシュ}:{ファイルパス}

シェルスクリプトを作る

CotEditorで上のコマンドの結果を開くようなシェルスクリプトを作ります。
CotEditorは調べてみるとコマンドラインツールが用意されていたのでそれを利用しました。

open_coteditor_from_sourcetree.sh

#!/bin/bash

COT=/Applications/CotEditor.app/Contents/SharedSupport/bin/cot;

git show ${1} | ${COT};

特定の場所に保存したら、実行権をつけておきます。

chmod a+x open_coteditor_from_sourcetree.sh

シェルスクリプトの保存したパスはどこかに書いておきます。

Source Treeでカスタムアクションを作成

Actions > Custom Actions > Edit

左下のAddボタンから追加します。

Menu Caption: 好きな名前
Script to run: さきほどのシェルスクリプトのパス
Parameters: $SHA:$FILE

custom_actions

ためしてみる

Historyタブを開いて、特定のコミットの特定のファイルを選択して右クリックしたら、CotEditorが立ち上がって見られました。
ただ、拡張子を指定しているわけじゃないので、シンタックスハイライトされてないのが課題かな。
でもまあ、エディタで見ることはできたので良しとします。

sourcetree_custom_action_demo

LINEで送る
Pocket

ページトップへ戻る