【发布时间】:2016-10-12 12:54:36
【问题描述】:
我在编译我的应用程序时不断收到此错误。 TS v2.0.3
app/components/profile.component.ts(13,12): error TS1005: '=' expected.
app/components/profile.component.ts(14,13): error TS1005: '=' expected.
app/components/profile.component.ts(16,10): error TS1005: '=' expected.
这是我的代码:
import { Component } from '@angular/core';
import { apiService } from '../services/api.service';
import 'rxjs/add/operator/map';
@Component({
moduleId: module.id,
selector: 'profile',
templateUrl: './profile.component.html'
})
export class ProfileComponent{
product[];
products[];
productTitle:string;
first[];
constructor(private _apiService:apiService){
this._apiService.getProduct().subscribe(product => {
//console.log(product.result.products);
this.product = product.result.products[0];
})
}
searchProd() {
this._apiService.updateTitle(this.productTitle);
this._apiService.getProduct().subscribe(productTitle => {
//console.log(productTitle.result.products);
this.first = productTitle.result.products[0];
this.products = productTitle.result.products;
})
}
}
我读过这可能是因为 TS 更新了语法,并确实将其更新到了最新的 2.1.0 版本,但仍然出现错误。
有人可以帮我解决这个问题吗?
【问题讨论】:
-
product[];不是公认的 Typescript 语法 -
你能帮忙看看在这种情况下正确的语法是什么吗?
-
您需要指定数组的类型,例如:
products: any[]; -
这取决于你想在这里声明什么。本能说您应该将其转换为卡坦建议的内容。但我看到您将
this.product和this.first分配给单个元素,这使得声明product: any[]无效。 -
另请注意,这对 2.0 来说并不新鲜——这从来都不是有效的语法
标签: angular typescript