2015年9月21日月曜日

Android FirefoxのページをPCのFirefoxで分析


Android Firefox側の設定(1度のみ)

  1. メニューを表示 -> 設定
  2. デベロッパーツール
  3. リモートデバッグにチェック


PC Firefoxで分析開始

  1. USBでAndroidを接続
  2. ツール -> Web開発 -> Web IDE
  3. 右上の 下矢印をクリック
  4. USBでバイスから接続しているAndroid端末を選択
  5. Android端末側で接続の許可のダイアログが表示されるのでOK
  6. 左上の「アプリを開く」で分析したいページを選択

2015年9月20日日曜日

ocLazyLoad very long loading




 なぜか Android4.4の標準ブラウザ(Chrome30)だけでocLazyLoadの読み込みだけに15秒以上かかります。

全てGCに使われているようです。
ver1.0.5で直りました。changelogを見てもそれらしい修正がないですし、変更ソースの箇所も関係ないのですが・・

2015年9月2日水曜日

日本語名プラグラムライブラリまとめ

英語の講演などで日本語名のライブラリが使われていると何故かうれしく感じます。

OnsenUI

モバイルUIフレームワーク

Bonsai

SVGライブラリ

KendoUI

モバイルUIフレームワーク

Kaminari

Ruby on Rails用ページング

Nokogiri

Ruby HTML , XML パーサー

2015年7月19日日曜日

RestangularでResouce RESTを使用する

RestangularでRailsのresouceを使用する場合
公式で議論はあるみたいですが正式なやり方はよく分かりませんでした。

Restangular.all('config').customGET().then....
以下でもいけるようなので基本下で
Restangular.one('config').get().then....

Angular resouce で saveメソッドを作成

REST Resouces

app.factory('Resources', [ '$resource', function ($resource) {
    return function (url, params, methods) {
        var defaults = {
            show: { method: 'GET', isArray: false },
            index: { method: 'GET', isArray: true},
            update: { method: 'PUT', isArray: false},
            create: { method: 'POST'},
            destroy: { method: 'DELETE'}
        };
        methods = angular.extend(defaults, methods);
        var resource = $resource(url, params, methods);
        resource.prototype.$save = function () {
            if (!this.id) {
                return this.$create();
            }
            else {
                return this.$update();
            }
        };
        return resource;
    };
}]);

 

REST Resouce

railsでのresouce
//RailsのResouce対応
app.factory('Resource', [ '$resource', function ($resource) {
    return function (url, params, methods) {
        var defaults = {
            show: { method: 'GET', isArray: false},
            create: { method: 'POST',isArray: false},
            update: { method: 'PUT',isArray: false},
            destroy: { method: 'DELETE',isArray: false}
        };
        methods = angular.extend(defaults, methods);
        var resource = $resource(url, params, methods);
        resource.prototype.$save = function () {
            if (!this.id) {
                return this.$create();
            }
            else {
                return this.$update();
            }
        };
        return resource;
    };
}]);

使用例

app.factory("Book",['Resources',function (Resources) {
    return Resources( "/books/:id.json", {id: '@id'},{});
}]);

2015年7月1日水曜日

Angularjsでdirective以外でDOMをコンパイルする

directiveの中だけでなくコントローラの中などでも$compileを使ってdomをコンパイルすることができました。

var template = "<custom-button>Hello</custom-button>";
var dom = $compile(template)($scope);
document.getElementById('target').appendChild(dom[0]);