在我的spec.ts 文件中,它读取此错误““字符串”类型的参数不可分配给“数字”类型的参数。”对于值unitPrice,这没有意义,因为在我的.ts文件中unitPrice是类型数字。这些属性应该存储来自我使用 springboot 制作的 api 的值,并且 unitPrice 在我的 api 中被指定为 BigDecimal。所以我不知道unitPrice是一个“‘string’类型的参数”是从哪里得到的。
这是我的 .spec.ts 文件:
import { Product } from './product';
describe('Product', () => {
it('should create an instance', () => {
expect(new Product('sku', 'name', 'description', 'unitPrice', 'imageUrl', 'active', 'unitsInStock', 'dateCreated', 'lastUpdated')).toBeTruthy();
});
});
这是我的.ts 文件
export class Product {
constructor(public sku: string,
public name: string,
public description: string,
public unitPrice: number,
public imageUrl: string,
public active: boolean,
public unitsInStock: number,
public dateCreated: Date,
public lastUpdated: Date
) {
}
}
这是我的 api 中的 json 片段
"_embedded" : {
"products" : [ {
"sku" : "BOOK-TECH-1000",
"name" : "JavaScript - The Fun Parts",
"description" : "Learn JavaScript",
"price" : 19.99,
"imageUrl" : "assets/images/products/placeholder.png",
"active" : true,
"unitsInStock" : 100,
"dateCreated" : "2024-12-19T14:44:23.000+00:00",
"lastUpdated" : null,
"_links" : {
"self" : {
"href" : "http://localhost:8080/api/products/1"
},
"product" : {
"href" : "http://localhost:8080/api/products/1"
},
"category" : {
"href" : "http://localhost:8080/api/products/1/category"
}
}
}
如果
unitPrice
是数字类型,只需传递数值 (1
) 而不是字符串 ('unitPrice'
)。
import { Product } from './product';
describe('Product', () => {
it('should create an instance', () => {
expect(new Product('sku', 'name', 'description', 1, 'imageUrl', 'active', 'unitsInStock', 'dateCreated', 'lastUpdated')).toBeTruthy();
});
});