0

別のファイルで宣言されているcoffeescriptとjs関数をzappaアプリから呼び出せるようにしたいです。私はそれをまったく機能させることができません。

zappajs クラッシュコースで説明されているように @include を使用してみました...

しかし、私は得る

TypeError: オブジェクト # にはメソッド 'include' がありません

テストアプリのコードは次のとおりです。

#app.coffee
require('zappajs') ->
    @get '/': -> @include 'call'

そして、これが私が別のファイルで呼び出そうとしている関数です。

#call.coffee
@include = ->
    "call me"
4

3 に答える 3

1

試す:

#app.coffee
require('zappajs').run port, host,  ->
  @include './routes'

#routes.coffee
@include = ->
  @get '/': ->
    @render 'index.jade',
      foo:'bar'
于 2013-03-20T07:09:47.153 に答える
1

何もテストしていませんが、ここでいくつかのことを混同しているようです。私は間違っているかもしれませんが、おそらく require node.js-stylerequireを使用するか、 zappastyleを使用する必要があります@includeが、何が機能するかを本当に理解するまで、それらを混在させることはおそらく良い考えではありません@include

リンク先の zappa クラッシュ コースでは、モジュールの定義と使用の両方が示されていますが、どちらも を使用して行われてい@includeます。あなたが書いたことに基づいて、あなたがやろうとしている方法をrequire混ぜることはできないと思います.@include

于 2013-03-01T19:18:28.170 に答える
0

マリウスは正しいです、私はrequireと@includeを混同していました...これを機能させることができます、それは本当に私がやりたかったことです(つまり、別のファイルで関数を呼び出す)

require('zappajs') -> 
  test = require('./test') 
  @get '/': -> test.test(@response)

次のようなtest.coffeeというファイルを使用します

@test = (res) -> 
  res.send 'hullo' 
于 2013-03-02T01:56:47.973 に答える