2011-07-27 5 views
0

PalmのEnyoフレームワークは、プロトタイプに基づいてオブジェクトを作成するためにDSL-ish "Kind"システムを使用します。残念なことに、これは、私が信じるもので、より厳密ではないコードとなります。WebOS Enyoフレームワークでネイティブのjavascript/coffeescriptコンストラクタを使用できますか?

ネイティブのjavascriptプロトタイプ/コンストラクタでEnyoを使用/ハッキングした経験がある人はいますか?

enyo.kind 
    name: 'SimpleTimer' 
    kind: "RowGroup" 
    caption: "Simple Timer" 
    published: 
    timerDuration: 30 

対...誰がこれを試みた/達成したかどうかを知るために期待して

class SimpleTimer extends RowGroup 
    caption: "SimpleTimer" 
    published: 
    timerDuration: 30 

答えて

1

Enyoではなく、やや関係があります。このコーディングスタイルが必要な場合は、Joを調べるとよいでしょう。ここで私は昨日見たそれのためのCoffeeScriptラッパーです:

http://k33g.github.com/2011/08/14/JO-COFFEESCRIPT.html

ジョーは、PhoneGapのとウェブOSで動作しますが、1.1-3.xのだけでなく、他のプラットフォームをサポートしています。乾杯。

1

私は、あなたが同じことを達成しようとしてコンパイルされるJavaScript(haXeのJS)の異なる方法を使用して

た私は、基底クラスのような種類を拡張する...これは仕事を得ることができたが、私は持っていましたそれを動作させるために自分のファイルにフレームワークをラップします。私が働いているものを私は他の誰にそれを望むが、覗いて見て下さいすること自由に感じていない:

http://www.joshuagranick.com/blog/2011/08/08/enyo-with-code-completion-yes/

は素晴らしい一日を!

-1

オブジェクト指向ではなく、より機能的なスタイルを使用することもできます。多分何か:

new SimpleTimer timerDuration:99 

を実行して、代わりにタイマーを作成するための、その後

simpleTimer = (timerDuration) -> 
    new RowGroup caption: 'Simple Timer', timerDuration: timerDuration 

そして、あなたは私はあなたが質問イーモンを読んだかわからない

simpleTimer 99 
+0

を行うことができます -/ – arbales

+0

私はあなたの質問に対処しなかったことに気付きました。代わりに、オブジェクト指向のコードが必要かどうか、そしてあなたが言及した「不安定さ」の問題の広範な問題に取り組みました。私は、Coffeescriptを使用すると、機能的なコードスタイルに自然にマッチすることが分かりました。私は多くの文脈で、私の関数コードの例は、問題の2つのオブジェクト指向の代替のいずれかの代わりに使用できると思う、それははるかに短く、IMHOはあまり「不揃い」ではない。 –