找不到名称错误角度

时间:2018-04-30 18:11:58

标签: angular service

您好我是角色的新手,我遇到了一个找不到名称Categories的错误。我创建了一项服务来获取*ngFor的数据。

服务 -

import { Injectable } from '@angular/core';
import { Categories } from '../data/categories';
import { CATEGORIES } from '../data/categorydata';

@Injectable()
export class CategoriesService {

  constructor() { }

  getCategories(): Categories[] {
    return CATEGORIES;
  }
}

Category.ts文件

import { subCategory } from './subcategory';

export class Categories {
  id: number;
  categoryName: string;
  subcatName: subCategory[];
}

Categorydata.ts

import { Categories } from './categories';

export const CATEGORIES: Categories[] = [
  {
    id: 1,
    categoryName: 'jeans',
    subcatName: [
        { subcategory: 'example' },
    ],
  },
];

Categories.component.ts

import { Component, OnInit } from '@angular/core';
import { CategoriesService } from '../services/categories.service';

@Component({
  selector: 'app-categories',
  templateUrl: './categories.component.html',
  styleUrls: ['./categories.component.scss']
})
export class CategoriesComponent implements OnInit {
  categoryList: Categories[];

  constructor(private categoryservice: CategoriesService) { }

  ngOnInit() {
    this.categoryList = this.categoryservice.getCategories();
  }
}

当我运行服务时。它给了我一个错误

  

错误TS2304:找不到名称'类别'。

对于categories.component.ts中的行 -

categoryList: Categories[];

如果您需要其他信息,请与我们联系。

2 个答案:

答案 0 :(得分:1)

您错过了文件中的类别类型。

尝试在categories.component.ts中添加以下内容:

import { Categories } from '/path/to/categories'

答案 1 :(得分:1)

您需要像在服务类中一样导入类别类别,以便使用类型:

import { Categories } from '../data/categories';