タグ

ブックマーク / blog.asial.co.jp (17)

  • Vue.js + vuexによるToDoアプリケーションの実装

    前々回の記事でLaravel 5.4 + Vue.jsの開発環境を構築し、前回の記事でLaravel 5.4によるWeb APIを作成しました。 今回は、作成したWeb APIを使用したToDoリストアプリケーションを、Vue.jsを使って作成します。 PHP側の積み残し はじめに、昨日のコントローラーを修正します。 もともと、ItemControllerのindex()メソッドは「Item::all()」メソッドで全てのアイテムを返していました。しかし、画面上に表示するのは未完了のアイテムだけです。そこで、index()メソッドを以下のように変更します。 <?php public function index() { return response(Item::query()->where('checked', false)->get()); } <?php public functio

    Vue.js + vuexによるToDoアプリケーションの実装
  • jQueryから離れるためのJavaScript代替ライブラリまとめ

    jQueryは便利すぎて、ついつい他のフレームワークを使いながらも一緒に組み合わせて使ってしまったりします。その結果として読み込むサイズが肥大化したり、動作が重たくなったりします。特にスマートフォンのようにリソースがデスクトップほど潤沢でない場合は顕著です。 そこでjQueryから離れて代替ライブラリを使ってみましょう。多くのライブラリはjQueryを踏襲して似たような使い方ができるようになっています。 Minified.js jQueryのようにDOM操作、アニメーション、イベント、HTTPリクエストをサポートしています。また、コレクション、日付や数字のフォーマット、テンプレートといった便利ユーティリティも備えています。 サイズは4KB(ミニファイ&Gzip)で、jQuery 2.1.4の29KBに比べて大幅に軽量です。 Minified.js – A Truly Lightweight

    jQueryから離れるためのJavaScript代替ライブラリまとめ
  • LocalKitを使っているなら自動テストも簡単。JavaScriptテストフレームワークまとめ

    LocalKitを使うメリットの一つにテストフレームワークが容易に使えるようになるという点が挙げられます。そこで今回は開発したJavaScriptコードでユニットテストを実現するためのフレームワークを紹介します。 Jasmine: Behavior-Driven JavaScript describe("CallTracker", function() { it("tracks that it was called when executed", function() { var callTracker = new j$.CallTracker(); expect(callTracker.any()).toBe(false); callTracker.track(); expect(callTracker.any()).toBe(true); }); it("tracks that num

    LocalKitを使っているなら自動テストも簡単。JavaScriptテストフレームワークまとめ
  • http://blog.asial.co.jp/1416

    http://blog.asial.co.jp/1416
  • Monaca/Cordovaですぐに使えるアニメーションライブラリまとめ

    ハイブリッドアプリ開発でも利用出来る、JavaScriptCSSのアニメーションライブラリを集めてみました。 最近ではCanvasやWebGLを利用したアプローチもあると思いますが、ちょっとしたUXを作るにはライブラリが大きすぎます。開発にインパクトを与えず、既存の技術で対応でき、さらにネイティブライクである点をポイントにまとめてみました。 jQueryのanimation代替え系 Velocity.js jQueryの$.animate()と同等のAPIを持ちながらjQueryには依存しない、高速アニメーションライブラリです。既存コードの「$.animate」を「$.velocity」とするだけでも運用が可能とあるので、いま速度に悩まされている方は、一度こちらを試してみてはいかがでしょうか。

    Monaca/Cordovaですぐに使えるアニメーションライブラリまとめ
  • PHPで日付時刻の処理を書くなら Carbon がおすすめ

    どうも、筋トレにハマっているたきゃはしです。 日はPHPにおける日付時刻のライブラリについて書いていきたいと思います。 突然ですが、日付や時刻が絡む処理って意外とやっかいだと思いませんか?おそらく皆さんもいくつか思い当たるフシがあるかと思いますが、そんなやっかい事も Carbon(カーボン)を使えば解消できるかもしれません! Carbon – A simple PHP API extension for DateTime. Carbon とはPHPのDateTimeクラスを継承して拡張された日時操作ライブラリです。 「Carbonってどうなの?流行ってるの?」という方向けに予め補足致します。 Carbonはすでに人気のフレームワークに統合されていたり、GitHubで☆3000に迫る評価もありますのでDateTimeライブラリとしてデファクトになるんじゃないかと予想できます。 ではインスト

    PHPで日付時刻の処理を書くなら Carbon がおすすめ
    monyurin
    monyurin 2015/05/19
  • Ajaxによるmultipart/postでの画像ファイルアップロード その3

    こんにちは。内藤です。 前回 http://blog.asial.co.jp/1271 前々回 http://blog.asial.co.jp/1260 は、それぞれFormタグ、Cameraプラグインで画像を取得し、それをFormDataオブジェクトにBlobとして付与して、それをAjaxでサーバーにアップロードする方法について紹介しました。 今回は、FormDataではなく、手動でMultipart Postを生成してアップロードする方法について紹介します。FormDataは便利なのですが、Multipartの仕組みがすべてブラックボックス化されてしまっているため、内部の動作がよく分かりません。今回紹介する方法は、Multipartを自分で作成するため、他の言語で同様の機能を実装するのにも役立つかと思います。 かつては、JavaAppletなどでMultipart送信をするためによく使

    Ajaxによるmultipart/postでの画像ファイルアップロード その3
  • 透過がサポートされたnode-webkit(NW.js)でガジェットを作ろう

    こんにちは、古見澤(コミザワ)です。 今回は、前回記事にした node-webkit が透過をサポートし始めたので、HTML5やJavascriptCSSなどのWeb系の言語でガジェットのようなモノを作ってみようという内容となります。 ↓ツイッターから情報を取得して表示するだけの単純なものですが、こんな感じのものを作れます。 動画 node-webkitって何?という方は、前回の記事も合わせてお読みください。 HTML5+CSS3+JSでネイティブGUIアプリが作れる、node-webkitを触ってみる ※エントリーはWindows環境(Win7 Professional x64)での話になります。 (透過機能はMacLinuxでも使えます、後述するマニュアルを参照ください。) また、Windows環境では、デスクトップウィンドウマネージャーが有効である必要があるため、 Aero機能

    透過がサポートされたnode-webkit(NW.js)でガジェットを作ろう
  • JavaScriptで日付を扱うならこれ!「moment.js」

    ■ つかいかた(基礎編) ダウンロードしたmoment.jsをscriptタグで読み込ませたら準備完了です。 あとは下記のような実装で使用できます。 // momentオブジェクトを初期化して・・・ var m = moment(); // formatで出力! var output = m.format("YYYY年MM月DD日 HH:mm:ss dddd"); console.log(output);  // => 2013年05月15日 12:34:56 Wednesday // 現在時刻 moment(); // ミリ秒で指定 moment(1368543600000); // タイムスタンプ(秒)で指定 moment.unix(1368543600); // Date.parseで解析可能な文字列を指定 moment("May 15, 2013"); // Dateオブジェクトか

    JavaScriptで日付を扱うならこれ!「moment.js」
  • http://blog.asial.co.jp/1236

  • JavaScriptによる小数計算の誤差を無くす

    var oldValue, newValue, diff; oldValue = 67; newValue = 66.9; diff = oldValue - newValue; diff = Math.floor(diff * 10) / 10; // 小数点第2位以下切り捨て console.log("今日は" + diff + "kgやせました!"); ファッ!? 0.1kg痩せたはずが、0kgと表示されてしまいました。 たかだか100gとはいえ、こんな表示になったらガックリきますね。 一行ずつ値を追っていくとわかるのですが、4行目で減算した時点でdiffの値が “0.09999999999999432” とズレてしまっています。 これはJavaScriptがIEEE 754という規格に従って実装されているためです。 つまり、この計算結果はJavaScriptの仕様なのでJavaSc

    JavaScriptによる小数計算の誤差を無くす
  • 【Winアプリ】ブラウザの自動操作!~Selenium WebDriver~ : アシアルブログ

    はじめに 今回はSelenium WebDriverをご紹介します。ブラウザ操作を自動化する際には最適な仕組みです。Webシステムのend-to-endテストを自動化する際には、ブラウザ操作が必要になることがあります。そんな時にSelenium WebDriverはとても便利です。 Selenium Seleniumとは、ブラウザをプログラムで動かすフレームワークです。この仕組みを使うことで、ユーザーテストなど、様々な処理を自動化できます。現在のところ、Seleniumは以下のWebブラウザを制御できます(公式サイト)。 Internet Explorer Firefox Chrome Opera Android標準Webブラウザ Safari (iPhone標準Webブラウザ) 実際に使用する際には、以下の2つの仕組みのどちらかを使用します。

    【Winアプリ】ブラウザの自動操作!~Selenium WebDriver~ : アシアルブログ
  • PHPからChromeにログ出力「Chrome Logger」

    こんにちは、中川です。 PHPでの開発中のちょっとしたデバッグに、echo や var_dumpで画面に値を出力して確認することがありますよね。 このデバッグ方法は簡単でいいのですが、出力した配列の値などはパッと見で確認しやすいとは言えませんし、画面の表示内容が崩れたりします。 画面に出力しない方法としては、 error_log関数を使ってapacheログやファイルに出力する方法もありますが、 この場合は、サーバ側にログインしてtailなどでファイル内容を確認する必要がでてきます。 そんなちょっとした問題を解決してくれるツール 「Chrome Logger」をご紹介したいと思います。 Chrome Loggerを使えば、JavaScriptのconsole.logのように、 表示画面には影響を与えないでブラウザのデベロッパコンソールにPHPから値を出力できます。 ■Chrome Logge

    PHPからChromeにログ出力「Chrome Logger」
  • 【CSS】ハイブリッドアプリを作成するときにいつも書くようにしているCSSプロパティいくつか!

    こんにちは、相変わらずドラクエ10三昧の橋です。 最近はライノス道場に通っています。 さて、今日はハイブリッドアプリのCSSを書く際に毎回指定するようにしているプロパティを備忘録がてらいくつか書いていこうと思います(いつも忘れるので)。 -webkit-tap-highlight-color: rgba(0, 0, 0, 0) iPhoneAndroidでリンクなどの要素をタップしたときに、iPhoneでは薄いグレー、Androidでは緑やオレンジの枠がデフォルトで表示されます。 -webkit-tap-highlight-colorというプロパティに色を指定することで、この枠の色を変えることができます。 ハイブリッドアプリを作成する際には、この枠が出ると如何にもWebっぽくなってしまうため、透明色を-webkit-tap-hightlight-colorに指定して、枠が表示されないよ

    【CSS】ハイブリッドアプリを作成するときにいつも書くようにしているCSSプロパティいくつか!
  • CSSだけで簡単に吹き出しを作成する方法4つ!

    こんにちは、橋です。 今日はCSSだけでお手軽に吹き出しを作る方法をご紹介したいと思います。 今回ご紹介するサンプルは4つ 一般的な三角の吹き出し 一般的な三角の吹き出し(ボーダー付き) ぽわわーんとした吹き出し 丸い(曲線の)吹き出し 4つのサンプルの実行結果は、ここで確認できます。 IE9以上とIE以外のブラウザであればちゃんと表示されるかと思います。 IE8以下はborder-radiusが使用出来ないため、サンプル3とサンプル4がちゃんと表示されません。 それでは1つ1つ見て行きましょう。 1.一般的な三角の吹き出し まずはソースから。 <!DOCTYPE HTML> <html lang="ja"> <head> <meta charset="UTF-8"> <style type="text/css"> * { box-sizing: border-box; } .wrapp

    CSSだけで簡単に吹き出しを作成する方法4つ!
  • Node.jsスクリプトの複数プロセス化を試してみました

    こんにちは、中川です。 今回もPHPには一切触れないで、node.jsについて書いていこうと思います。 node.jsといえば、サーバサイドのV8で動作するJavaScriptのため、 通常、シングルスレッドでの動作となります。 ただ、そのまま使ってしまうと、最近のマシンはマルチコアが当たり前なため、 1コアだけ使うようなプログラムではもったいないということがありますね。 そこで、node.jsでもスクリプトを複数プロセス立ち上げ、 マルチコア環境でも有効に利用できるようにしてくれるモジュールを色々試してみました。 ■環境 Ubuntu10.10 Node v0.4.0 ・spark2@2.0.11 ・cluster@0.2.4 ・fugue@0.1.1 ・multi-node@0.2.2 ※ポート: 3000番 ※Worker数: 2個 // server.default.js var 

    Node.jsスクリプトの複数プロセス化を試してみました
  • 【AS3】「ActionScript3の、こんなときどうするの??」

    こんにちは、橋です。 今日は、自分が普段AS3を書いていて「こんなときどうするの??」と思ったところを中心にいくつか書いみました。 思いついたものから書いていったので、内容はバラバラですが、お役に立てる内容が一つでもあれば幸いです。 では、どうぞー。 Q. イベントリスナーに引数を渡したい。 A. 関数を返すイベントハンドラを指定することで、引数を渡すことができます。 サンプル. // イベントリスナを登録するときに、引数を渡す addEventListener(MouseEvent.CLICK, clickHandler("hoge")); private function clickHandler(str:String):Function { return function (event:MouseEvent):void {trace(str)}; } public class te

    【AS3】「ActionScript3の、こんなときどうするの??」
    monyurin
    monyurin 2010/02/09
  • 1