我的編程經驗主要在PHP,JavaScript和一些Python中。我已經看到了「依賴注入」這個術語,我已經做了一些搜索,但我仍然有點困惑。 This似乎是一個高度評價的帖子,但我仍然不滿意(要麼或我只是無望)JavaScript中的依賴注入/ Knockout.js
接受後使用的例子是....
public SomeClass (MyClass myObject) {
this.myObject = myObject;
}
我我用了一下knockout.js,並且已經注意到設置對象值的類似場景。將參數從ReservationsViewModel傳遞給SeatReservation函數以將對象設置爲依賴注入?我評論了我想知道的兩條線。
function SeatReservation(name, initialMeal) {
var self = this;
self.name = name;
self.meal = ko.observable(initialMeal);
self.formattedPrice = ko.computed(function() {
var price = self.meal().price;
return price ? "$" + price.toFixed(2) : "None";
});
}
function ReservationsViewModel() {
var self = this;
self.availableMeals = [
{ mealName: "Standard (sandwich)", price: 0 },
{ mealName: "Premium (lobster)", price: 34.95 },
{ mealName: "Ultimate (whole zebra)", price: 290 }
];
self.seats = ko.observableArray([
//dependency injection?????
new SeatReservation("Steve", self.availableMeals[0]),
new SeatReservation("Bert", self.availableMeals[0])
]);
self.totalSurcharge = ko.computed(function() {
var total = 0;
for (var i = 0; i < self.seats().length; i++)
total += self.seats()[i].meal().price;
return total;
});
self.addSeat = function() {
//dependency injection?????
self.seats.push(new SeatReservation("", self.availableMeals[0]));
}
}
將參數傳遞給SeatReservation函數以設置「新SeatReservation」對象的數據時,是否將它視爲依賴項注入?
如果它不是依賴注入,那麼這些對象的設置方式是否有特定術語?
什麼函數將SeatReservation作爲參數傳遞給ReservationsViewModel?它是SeatReservation函數調用中的一個參數嗎? – user3476345
這將是您在問題中首先定義的'SeatReservation'函數。 – Anders
我爲什麼要用'AMD'?你的意思是'require.js'? – hellboy