問題タブ [hottowel]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
294 参照

knockout.js - デュランダルでのぎこちないトランジション

私は奇妙な問題に直面しています。同じビュー/ビューモデルにヒットする複数のルートを設定しましたが、フィルタリングは異なります。例えば:

ルーティングは正常に機能し、vm activate 関数で適切なアイテムを表示するためにフィルタリングを行っています。

最後に、同じ vm で、タブがクリックされたとき (Upcoming、All、Archived) のイベントがあり、ビューを切り替えます。

init() 関数は、 activate 関数が戻るのを許可する前に、複数の promise が終了するのを待ちます。

これは機能しますが、タブをクリックするとすぐにビューが読み込まれ、次に遷移が発生してビューが再度読み込まれるため、非常にぎくしゃくした効果が生じます。何か案は?

0 投票する
2 に答える
1444 参照

durandal - Durandal: 複数のルート、1 つの ViewModel/View

items/one、items/two、items/three の 3 つのルートがあり、それらはすべて「items」vm/view を指しています。

items.js の activate 関数で、URL を確認し、それに基づいてフィルターを変更しています。

項目ビューには、1、2、および 3 のボタンを含むメニューがあります。各ボタンは、次のようなアクションにリンクされています。

これはすべて機能し、ビューに適切なフィルターを取得します。ただし、「1」を使用してから「2」に移動すると、ko バインド変数が「リアルタイム」で、つまり変化するにつれて、アクティブ化の前に更新されることに気付きました。 promise が解決されると、トランジションが 2 回発生します (データが取得されるときと、 activate 関数が返された後)。

これは、ビューとビューモデルが前のものと同じであるこのシナリオでのみ発生します。これは特殊なケースであることは承知しており、ルーターはおそらく areSameItem = true で新しいルートの読み込みを処理しています。VM/View を 3 つに分割して基本モデルから継承することもできましたが、もっと簡単な解決策を望んでいました。

0 投票する
2 に答える
437 参照

asp.net-mvc-4 - asp.net mvc spa durandaljs 日付形式が Knockout で機能しない

asp.net mvc SPA の durandaljs を調査しています。APS.net MVC4、Durandaljs、Knockoutjs、breeze、moment、および hottowel SPA サンプルの下にあるその他のライブラリを使用しています。

DOB、DateTime にバインドされたクライアント ビューがあります。

私のViewModelにはコードが含まれています

上記のコードは実際には querySucceeded から来ています。すなわち

これは、他のいくつかのフィールドですでにこれを達成しているため、機能していると思われますが、DateTime KnockoutOut の場合、GUI は更新されませんが、コンソール ログに UPDATED 形式の日付が表示されます。ここで何が欠けているのか誰か教えてください。前もって感謝します。

0 投票する
2 に答える
720 参照

asp.net-mvc-4 - ASP.Net MVC HotTowel テンプレートの目的は何ですか?

私は単一ページのアプリケーションを開始し、さまざまなテンプレートやプロジェクトなどを検討して、出発点として 1 つを決定しています。デフォルトの Microsoft テンプレートを使用して新しいプロジェクトをセットアップすると、mvc アプリに期待するのと同じように、mvc コントローラー、ビューなどが表示されます。

それから、いくつかの新しいコミュニティ テンプレートについて読んだので、それらも試してみたいと思います。「ホットタオル」についてよく読みました。まず、Visual Studio がテンプレートの表示を拒否します。この問題を抱えていて、修正されていない他の多くの人々を読みました。そのため、John Papa のサイトから手動で HotTowel テンプレートをインストールする必要があります。新しいスターター プロジェクトを生成して実行します。いい感じ。コードを調べ始めましたが、頭を悩ませています。これは何ですか?ここには、単一の空のインデックス アクションを持つデフォルト コントローラーを除いて、asp.net mvc はまったくありません。C# モデルは 1 つではありません。メイン テンプレートのカミソリ ビューは 1 つだけです。これは、アプリケーション内のアプリケーションのように見えます。これの主要な内臓は、asp.net とは関係のないさらに別のサブディレクトリにもインストールされています!!! Asp。net mvc は最初のページを起動するために使用されますが、その後は asp.net mvc がなくなり、生の html と js だけになります。asp.net mvcが邪魔になっているように感じます!

この「HotTowel」テンプレートについて何か不足していますか? 古いバージョンをインストールしましたか? 実際に asp.net を使用していない場合、このテンプレートの何がそんなに優れているのでしょうか?

0 投票する
2 に答える
770 参照

durandal - DurandalJS アプリでアンカーを無視する

DurandalJS を使用した SPA アプリがうまく機能します。リンクがルーティングされ、ビュー モデルがアクティブ化されます。

問題は、サーバー上に実際に存在するページを指すアンカーがあることです。このページを実際にクエリするには、ブラウザーが必要です (これは asp.net MVC ページです)。

Durandal のルーターは、相対 (または実際には同じドメイン) のすべてのリンクにフックしているようで、ルートが見つからない場合は、ルーターの handleInvalidRoute メソッドを呼び出します。

Durandal にこの URL をルーティングしないように指示する方法を、私は一生理解できません。中央/ctrl+クリック機能も維持する必要があります。

ドキュメンテーションは役に立たず、グーグルは何も見つけませんでした。router/SammyJs のコードも調べてみましたが、明らかなものは見当たりませんでした。

この質問は私のものと同じようですが、答えはうまくいきません。私の URL はすべて実際の URL (ハッシュプレフィックスではない) であるため、PushState をオフにすることはできません。

0 投票する
1 に答える
1111 参照

durandal - router.guardRoute is not being called

This is probably a simple one..

I am trying to override the routers guardRoute function and it seems that my version is not being called.

Code

Edit 1 - Entire main.js file shown

I do not get my log message and the router continues to process the request. What am I doing wrong?

0 投票する
1 に答える
909 参照

metadata - Breeze: metadataStore が設定されるまで _executeQueryCore を実行できません

私は、プロジェクトを形成するために拡張されたホットタオルテンプレートに付属の Breeze v1.1.2 を使用していました。NuGet パッケージを最新の 1.3.3 に更新するというミスを犯しました (学習したことはありません)。とにかく、すべてが順調で、今はそれほどでもありません!

リリース ノートやその他のドキュメントの指示に従って、BreezeWebApiConfig ファイルを次のように変更しました。

そして、config.js ファイル (EntityManager コンストラクターに serviceName を提供する) を次のようにします。

興味があれば、私の BreezeController:

「metadataStore が設定されるまで _executeQueryCore を実行できません」というエラーが表示されるようになりました。

ここで何が欠けていますか?

編集: 必要な部分を省略した可能性があります... 上記の SomeItems() メソッドで、実際に行われるのは MyDBContext クラスの GetMeSomeData() メソッドの呼び出しです。このメソッドは、ストアド プロシージャに対して次の呼び出しを行い、データを取得します。

私の限られた理解では、 Metadata() への呼び出しは失敗していませんが、戻ってきたときにエンティティモデルが何であるかはわかりませんが、どこかでエンティティからそれを理解する必要があります私が持っているモデル (つまり、SomeItem)? Metadata() からの戻り文字列には、エンティティに関する情報が含まれていません。意識させる方法はありますか?それとも、ヒナギクで遊んでいるレフトフィールドで完全にオフになっていますか?

0 投票する
4 に答える
5612 参照

typescript - ホットタオル (デュランダル) + typescript

これは私の最初の投稿なので、幸運を祈ります:)

私はホットタオル(デュランダル) + typescript を使いたいです、私はこれらのスレッドに従いまし: in-combination-with-durandal-en-typescript -不正確な this-in-select

また、 DurandalTypescriptExampleサンプルも試しました

このサンプルは、次のエラーで実行されません:

「「/」アプリケーションでサーバー エラーが発生しました。

リソースが見つかりません。"

最初は、ビューモデルをタイプスクリプトで変更するだけで、その後シェルを変更することにしましたが、両方の状況で次のエラーが発生しました:

これは私のshell.tsコードです(このサンプルから使用しました):

そして、私はこのエラーを受け取りました:

何か案が?

可能であれば、実行可能なソリューションが高く評価されます。

どうなるか見てみましょう。

0 投票する
1 に答える
486 参照

cordova - コルドバ入りホットタオル

Apache Cordova/PhoneGap で動作するように HotTowel アプリケーションを構成しようとしています。

index.cshtml を index.html にコピーし、すべてのバンドル参照を html リンク タグに置き換えました。

問題は、ページが最初に読み込まれるときに、App/views/shell.html を読み込もうとして失敗することです。

クロス オリジン リクエストは HTTP でのみサポートされています

これは、Cordova アプリケーションで必要なファイル プロトコルで index.html を実行しているために発生していますが、クロス オリジン リクエストを修正する方法がわかりません。

  1. HTTPを使わずにホットタオル/デュランダルが動作するように設定する方法はありますか?

  2. コルドバでホットタオルを使った人はいますか?