2017-02-07 7 views
1

私たちはアプリケーションのフロントエンドにAureliaを使用しています。それに基づいていくつかの異なるプロジェクトがあるので、開発者が追加できるいくつかのnpmパッケージにすべてのカスタムコードを追加したいと考えています。 これにより、新しい空のプロジェクトを作成し、プロジェクトのコードベースに依存関係を追加せずに再利用可能なコードに依存関係を追加することができます(必要に応じて個別に更新できます)。Aurelia:npmパッケージのView/Viewmodelの使い方は?

たとえば、私はツールパッケージとサービスパッケージが好きです。これはもちろん簡単です。

しかし、われわれのカスタム再利用可能コンポーネントをすべて含む「ui」パッケージを使用する方法を理解できません。それも可能ですか?どのようにhtmlテンプレートにコンポーネントを必要としますか?

これを行うことができない場合は、誰も再利用可能なコードをアプリケーション固有のコードからきれいに分離する方法を知っていますか?

ありがとう!

答えて

1

もちろん、あなたはそうすることができます。これは、aureliaが利用できるプラグインの多くです。 一つの方法は、グローバルリソース(パッケージやプラグインで)として、あなたのコンポーネントを登録し、クライアントアプリ、CLIの例では、それらをインポートすることです:

// from your plugin 
aureliaConfig.globalResources([ 
    './jqm-loader', 
    './jqm-page', 
    './jqm-footer', 
    './jqm-header' 
]); 

その後、あなたのアプリケーションでそれらをインポートします。

// aurelia.json 
{ 
    "name": "my-reusable-widgets", 
    "path": "../node_modules/my-reusable-widgets", 
    "main": "index", 
    "resources": [ 
      "**/*.{css,html}" //to load them all or you can add individual files 
    ] 
} 

その後、あなたのウィジェットを使用します。

<jqm-loader></jqm-loader> 
... 

あなたはまた、必要に使用することができますglobalResources使用しない場合:

<require from="my-reusable-widgets/jqm-header"></require> 
<jqm-header></jqm-header> 
+0

ありがとうございます!私は公式のGitterチャンネルから同様の回答を受けましたが、あなたのものは非常に精巧です。コンポーネントがロードされたときに「スクリプトエラー」が発生するため、プラグインを使用する上でいくつかの問題がありますが、私は自分の道を見つけるべきだと思います。 – Gaet

関連する問題