"全日历"不是一个已知元素:



嘿,我是Angular的新手。。。到目前为止,我想试试完整的日历。我以前试过运行这个模块,它能正常工作。然而,今天我创建了一个新的项目,并遵循了angular文档中描述的步骤。此外,我完成了fullcalendar文档中的所有步骤,但它仍然不起作用。

这就是我得到的错误:

ERROR in src/app/app.component.html:1:1 - error NG8001: 'full-calendar' is not a known element:
1. If 'full-calendar' is an Angular component, then verify that it is part of this module.
2. If 'full-calendar' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message.
1 <full-calendar defaultView="dayGridMonth" [plugins]="calendarPlugins"></full-calendar>

app.module.ts

import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import {FullCalendarModule} from '@fullcalendar/angular';
import { AppComponent } from './app.component';
@NgModule({
declarations: [
AppComponent
],
imports: [
BrowserModule,
FullCalendarModule
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule { }

app.component.ts

import { Component } from '@angular/core';
import dayGridPlugin from '@fullcalendar/daygrid';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
title = 'nachweis-frontend';
calendarPlugins = [dayGridPlugin];
}

app.component.html

<full-calendar [plugins] = "calendarPlugins"></full-calendar>

这也是我的angular json。我在这里没有做任何更改:

{
"$schema": "./node_modules/@angular/cli/lib/config/schema.json",
"version": 1,
"newProjectRoot": "projects",
"projects": {
"nachweis-frontend": {
"projectType": "application",
"schematics": {},
"root": "",
"sourceRoot": "src",
"prefix": "app",
"architect": {
"build": {
"builder": "@angular-devkit/build-angular:browser",
"options": {
"outputPath": "dist/nachweis-frontend",
"index": "src/index.html",
"main": "src/main.ts",
"polyfills": "src/polyfills.ts",
"tsConfig": "tsconfig.app.json",
"aot": true,
"assets": [
"src/favicon.ico",
"src/assets"
],
"styles": [
"src/styles.css"
],
"scripts": []
},
"configurations": {
"production": {
"fileReplacements": [
{
"replace": "src/environments/environment.ts",
"with": "src/environments/environment.prod.ts"
}
],
"optimization": true,
"outputHashing": "all",
"sourceMap": false,
"extractCss": true,
"namedChunks": false,
"extractLicenses": true,
"vendorChunk": false,
"buildOptimizer": true,
"budgets": [
{
"type": "initial",
"maximumWarning": "2mb",
"maximumError": "5mb"
},
{
"type": "anyComponentStyle",
"maximumWarning": "6kb",
"maximumError": "10kb"
}
]
}
}
},
"serve": {
"builder": "@angular-devkit/build-angular:dev-server",
"options": {
"browserTarget": "nachweis-frontend:build"
},
"configurations": {
"production": {
"browserTarget": "nachweis-frontend:build:production"
}
}
},
"extract-i18n": {
"builder": "@angular-devkit/build-angular:extract-i18n",
"options": {
"browserTarget": "nachweis-frontend:build"
}
},
"test": {
"builder": "@angular-devkit/build-angular:karma",
"options": {
"main": "src/test.ts",
"polyfills": "src/polyfills.ts",
"tsConfig": "tsconfig.spec.json",
"karmaConfig": "karma.conf.js",
"assets": [
"src/favicon.ico",
"src/assets"
],
"styles": [
"src/styles.css"
],
"scripts": []
}
},
"lint": {
"builder": "@angular-devkit/build-angular:tslint",
"options": {
"tsConfig": [
"tsconfig.app.json",
"tsconfig.spec.json",
"e2e/tsconfig.json"
],
"exclude": [
"**/node_modules/**"
]
}
},
"e2e": {
"builder": "@angular-devkit/build-angular:protractor",
"options": {
"protractorConfig": "e2e/protractor.conf.js",
"devServerTarget": "nachweis-frontend:serve"
},
"configurations": {
"production": {
"devServerTarget": "nachweis-frontend:serve:production"
}
}
}
}
}
},
"defaultProject": "nachweis-frontend",
"cli": {
"analytics": false
}
}

看了你的GitHub代码后,我知道它在你帖子中发布的文件中,但由于某种原因,它在你的GitHub:中的app.module.ts中丢失了

import { FullCalendarModule } from '@fullcalendar/angular';

imports: [
BrowserModule,
FullCalendarModule
],

我在我的机器上测试了它,所以只要你安装了package.json中的所有npm包,你的代码现在就应该可以使用了

也许可以试试这些。。(正如医生所说:https://fullcalendar.io/docs/angular)

npm install --save @fullcalendar/angular @fullcalendar/core @fullcalendar/daygrid

2-(之后在app.module.ts文件中导入模块FullCalendarModule:

import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { FullCalendarModule } from '@fullcalendar/angular'; // for FullCalendar!
import { AppComponent } from './app.component';
@NgModule({
declarations: [
AppComponent
],
imports: [
BrowserModule,
FullCalendarModule // for FullCalendar!
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule { }

3-(现在你已经在你的应用程序中有了完整的日历,所以试着在中加入你的组件

a(html

<full-calendar defaultView="dayGridMonth" [plugins]="calendarPlugins"></full-calendar>

b( 在ts

import { Component } from '@angular/core';
import dayGridPlugin from '@fullcalendar/daygrid'; //< import. it
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.scss']
})
export class AppComponent {
calendarPlugins = [dayGridPlugin]; // important!
}

4-(小心。。正如医生所说。。。进口css(或scss文件(中的cssMANUALLY放入:

@import '~@fullcalendar/core/main.css';
@import '~@fullcalendar/daygrid/main.css';

希望它能帮助你!!

相关内容

  • 没有找到相关文章

最新更新