2

初心者のスカラ/リフトの質問:

CalendarMonthView サンプルをチェックアウトしました。

http://scala-tools.org/mvnsites/liftweb-1.0/lift-widgets/scaladocs/net/liftweb/widgets/calendars/CalendarMonthView.html

Lift 1.1-M6 を使用すると、コンパイルして動作しました。

サンプルを Lift 1.1-SNAPSHOT に移行しようとしたところ、AnonFunc の署名がクラス JsRaw から JsCmd (特性) に変更されたようです。

コンパイラはここで失敗します:

def itemClick = Full(AnonFunc("elem, param", JsCmd("alert('itemClick' + param + ' - ' + elem.nodeName)")))

見つかりません: 値 JsCmd

何か足りない?

よろしくポール

4

3 に答える 3

1

サブプロジェクトで CalendarMonthView サンプルの新しい Lift 1.1-SNAPSHOT 実装を見つけました

/lift-modules/lift-widgets

他にも非常に印象的なウィジェットのサンプルがあります:-)

最善の方法は、次の方法で liftweb リポジトリ全体を取得することです。

git クローン git://github.com/dpp/liftweb.git

于 2009-12-14T21:00:35.813 に答える
0

この問題には2つの解決策があります。

  1. JsCmdsjsExpからJsCmdへのコンバーターを使用します。
  2. 新しいJsCmdオブジェクトを作成します。

これらの2つの例を説明するために、元のコマンドが次のようになっていると仮定します。

def dayClick = Full(AnonFunc("elem, param", JsRaw("alert('day was clicked')")))

コンバーターは次のようになります。

import net.liftweb.http.js.JsCmds.jsExpToJsCmd
def dayClick = Full(AnonFunc("elem, param", JsRaw("alert('day was clicked')"))) 

そして、新しいコマンドは次のようになります。

import net.liftweb.http.js.JsCmd
def dayClick = Full(AnonFunc("elem, param",
                             new JsCmd("alert('day was clicked')"))) 

もちろん、これらは完全なインポートリストではなく、問題の変更に必要なインポートです。

于 2011-01-08T08:57:27.503 に答える
0

JsCmd の代わりに net.liftweb.http.js.JE.JsRaw を使用してみてください。

def itemClick = Full(AnonFunc("elem, param", JsRaw("alert('itemClick' + param + '-' + elem.nodeName)")))

それがAnonFuncからあなたのelemとparamを通過するかどうかはわかりませんが、そう信じています

于 2009-12-11T02:53:01.797 に答える