我想通过angular2(TS)做推车
import {Injectable} from 'angular2/core';
import {Cart} from './product'; //interface id: Number; name: String
@Injectable()
export class ProductService {
public products;
public cart : Cart[] = [];
addToCart(products: Object) {
console.log('product=',products)
this.cart.push(this.products);
console.log('cart=',this.cart);
}
Run Code Online (Sandbox Code Playgroud)
当我按方法推送产品时,我得到了
product= Object {id: 13, name: "Bombasto"}
Run Code Online (Sandbox Code Playgroud)
但在
console.log('cart=',this.cart);
Run Code Online (Sandbox Code Playgroud)
我有"未定义".为什么?
Thi*_*ier 12
我认为您的代码中存在拼写错误:
addToCart(products: Object) {
console.log('product=',products)
this.cart.push(products); // <--------
console.log('cart=',this.cart);
}
Run Code Online (Sandbox Code Playgroud)
如果要使用该products参数,则应this在push方法级别使用该关键字时删除该关键字.
使用this关键字,您可以使用未定义products的ProductService类的属性.因此,您尝试在数组中使用未定义的值...这就是您在跟踪中看到未定义的原因.
| 归档时间: |
|
| 查看次数: |
35102 次 |
| 最近记录: |