Angular 17 和 NgxMarkdown:错误:渲染器“ɵNgxMarkdownRendererExtendedForExtensions”不存在

问题描述 投票:0回答:1

这个 Angular 应用程序运行版本 17,并包含 ssr。不知何故,在集成ngx-markdown时,弹出此错误消息:

Error: renderer 'ɵNgxMarkdownRendererExtendedForExtensions' does not exist

这里是实现 NgxMarkdown 的所有相关脚本,根本没有其他集成或模块。

文章.component.ts

    import { CommonModule } from '@angular/common';
    import { Component, ChangeDetectionStrategy, OnInit, ViewEncapsulation } from '@angular/core';
    import { MarkdownModule, MarkdownComponent, provideMarkdown } from 'ngx-markdown';
    @Component({
        selector: 'article-component',
        templateUrl: './article.component.html',
        standalone: true,
        imports: [MarkdownModule, CommonModule,MarkdownComponent],
        providers: [provideMarkdown()],
        encapsulation: ViewEncapsulation.None,
        changeDetection: ChangeDetectionStrategy.OnPush,
    })
    export class ArticleComponent implements OnInit {
        constructor(
        ) { }
    
        ngOnInit(): void {
        }
    }

文章.component.html

<article>
<markdown>{{article.content}}</markdown>
</article>

应用程序配置

import { ApplicationConfig } from '@angular/core';
import { provideRouter } from '@angular/router';

import { routes } from './app.routes';
import { provideClientHydration } from '@angular/platform-browser';
import { provideHttpClient } from '@angular/common/http';

export const appConfig: ApplicationConfig = {
  providers: [provideHttpClient(), provideClientHydration(), provideRouter(routes)]
};
angular markdown angular17 angular-ssr
1个回答
0
投票

我认为您缺少环境提供者数组中的

importProvidersFrom(MarkdownModule.forRoot())

app.config.ts

import { ApplicationConfig, importProvidersFrom } from '@angular/core';
import { provideRouter } from '@angular/router';
import { MarkdownModule } from 'ngx-markdown';

import { routes } from './app.routes';
import { provideClientHydration } from '@angular/platform-browser';

export const appConfig: ApplicationConfig = {
  providers: [
    provideRouter(routes),
    provideClientHydration(),
    provideRouter([]),
    importProvidersFrom(MarkdownModule.forRoot()), // <- changed here
  ],
};

stackblitz ->

cd test
->
npm i
->
npm run start

© www.soinside.com 2019 - 2024. All rights reserved.