AngularJS1.0.2とjQuery1.8.2を使用しており、コントローラーの場合と同様に、AngularJSに依存関係をオブジェクトに注入させようとしています。jsFiddleの基本的な例を見つけることができます。そこには、2つのコントローラー(List
とNewItem
)、オブジェクト(Item
)とサービスを備えたモジュール(それぞれservices
とという名前communication
)があります。
私の問題はItem
:
var Item = function (name, price) {
var self = this;
self.name = name;
self.price = price;
self.pretty = function () {
return self.name + ": " + self.price;
};
};
その中で、外部でいくつかのものを使用する必要があります。たとえば、プロパティを通貨対応の文字列pretty
にフォーマットするメソッドが必要だとします。price
self.pretty = function () {
return self.name + ": " + $filter("currency")(self.price);
};
しかし、$filter
定義されていないため、これは機能しません。(念のために言っておきますが、の使用法$filter
は単なる例であり、何でもかまいません。)
また、オブジェクトを作成しているのはAngularJSではないため(コントローラーの場合のように)、に変更しても機能しません。それは私ですvar Item = function (name, price) {
。var Item = function ($filter, name, price) {
では、どうすればAngularJSにオブジェクトを作成させることができますか、または必要な依存関係を解決させることができますか?
のようなものvar item = angular.create(Item, $scope.name, $scope.price);
か、var item = new Item(angular.inject("filter"), $scope.name, $scope.price);
私は思う...