1

単純なプロジェクトを作成するときは、モデルとコントローラーを同じファイルに直接指定してから書き込みます。私の app.js は次のようになります。

var Library = can.Model({});   
var Control = can.Control({.....});    
var control = new Control('#main');

このための単一のhtmlファイル

複雑なアプリケーションの場合、コントローラー、モデル、およびビュー用に異なるフォルダーがあります。私の最初の質問は

1 コントローラーを別のフォルダーに配置し、モジュールを別のフォルダーに配置すると、呼び出しはどのように行われますか? すべてのコントローラーを呼び出すベースファイルのテンプレートを手伝ってくれる人がいますか?

1.ejs の代わりに特定のコントローラー用の単純な html ファイルがある場合、それは機能しますか?

ある程度ばかげているように聞こえるかもしれませんが、混乱しています。

よろしく、

4

3 に答える 3

1

CanJS +RequireJSTodoMVCの例をご覧ください。これは、CanJSのAMDモジュールバージョンを使用してRequireJSを開始するために必要なすべてを示しているはずです。

そしてもちろん、EJS(またはMustache)ビューを使用せずに、HTMLファイルでコントロールをインスタンス化できます。

于 2013-03-13T13:30:55.380 に答える
1

require.js のようなツールを使用することもできます。コードは次のようになります。

define(['control' ], function(Control){ 
    var control = new Control('#id');       
});

または、名前空間を使用します。

// user_control.js
APP.controllers = APP.controllers || {};
APP.controllers.UserControl = can.Control({...

// other file
var control = APP.controllers.UserControl('#id');
于 2013-04-29T05:24:07.400 に答える
0

ejs の代わりに html をインスタンス化するには、次を使用できます。

this.view({
            url: 'views/demos/accordion.html'
        });

他の誰かにとって役立つかもしれません。

于 2013-03-14T05:52:02.923 に答える