Skip to content

Instantly share code, notes, and snippets.

View aloerina01's full-sized avatar
🐾
にゃ〜ん

あろえ aloerina01

🐾
にゃ〜ん
View GitHub Profile
@aloerina01
aloerina01 / Immutable.js
Last active April 27, 2017 03:24
Immutable Object pattern with JS Module
class Immutable {
constructor(val) {
this._val = val;
}
get val() {
return this._val;
}
}
function of(val) {
@aloerina01
aloerina01 / Singleton.js
Last active April 27, 2017 03:24
Singleton pattern with JS Module
class Singleton {
constructor() {
this.init();
}
init() {
// fetch values
this._showHeader = true;
this._pattern = 101;
}
get isShowHeader() {
@aloerina01
aloerina01 / keybindings.json
Last active March 28, 2017 04:19
vscode settings
[{
"key": "alt+left",
"command": "workbench.action.navigateBack"
},{
"key": "alt+right",
"command": "workbench.action.navigateForward"
}
]
@aloerina01
aloerina01 / Config.js
Created March 14, 2017 09:11
ES6 Proxy - 実用例ModuleBuilderでSingletonクラスをつくる
import ModuleBuilder, { Handlers } from './ModuleBuilder';
/**
* Module
*/
class Config {
constructor() {
this._fetchConfig((result) => {
this._accountId = result.accountId;
this._name = result.name;
@aloerina01
aloerina01 / ModuleBuilder.js
Last active March 14, 2017 09:07
ES6 Proxy - 実用例ModuleBuilder
export default class {
constructor() {
this._moduleClass = {};
this._handler = {};
}
class(moduleClass) {
this._moduleClass = moduleClass;
return this;
}
handler(handler) {
@aloerina01
aloerina01 / Datetime.js
Last active March 14, 2017 08:54
ES6 Proxy - 実用例ModuleBuilderでImmutableクラスをつくる
import ModuleBuilder, { Handlers } from './ModuleBuilder';
/**
* Module
*/
class Datetime {
constructor(datetimeString) {
this._source = datetimeString;
this._datetime = this.to(datetimeString);
}
@aloerina01
aloerina01 / EnumBuilder.js
Last active March 14, 2017 08:37
ES6 Proxy - EnumBuilder
export default class {
constructor() {
this._obj;
}
object(obj) {
this._obj = obj;
return this;
}
keyValuePair(key, value) {
if (!this._obj) {
@aloerina01
aloerina01 / SampleModule.js
Last active March 12, 2017 11:57
ES6 Proxy - ProxyModule
class SampleModule {
constructor() {
this._a = 'private';
this.a = 'public';
}
}
const handler = {
construct(target, args) {
return new Proxy(Reflect.construct(target, args), handler);
@aloerina01
aloerina01 / Index.vue
Created March 8, 2017 09:07
Vueの単一ファイルコンポーネントは実は分けられる
<template src="./_index.html"></template>
<script>
// ...
</script>
@aloerina01
aloerina01 / package.json
Last active February 22, 2017 03:57
NODE_ENVを見て読み込むファイルを切り替える方法
{
"scripts": {
"production": "NODE_ENV=production webpack",
"build": "NODE_ENV=development webpack"
}
}