我不能在带有溢出自动功能的巢式迪瓦中使用锚并通过链接跳转到它.以下是我 case 的示例文件:
https://stackblitz.com/edit/stackblitz-starters-qaldie?file=src%2Fmain.ts
(在css中没有溢出设置,它可以工作)
我希望你能帮助我.
完整代码:完整代码:
import { Component, Input } from '@angular/core';
import { bootstrapApplication } from '@angular/platform-browser';
import {
InMemoryScrollingFeature,
InMemoryScrollingOptions,
provideRouter,
Route,
RouterModule,
withComponentInputBinding,
withInMemoryScrolling,
} from '@angular/router';
import 'zone.js';
@Component({
selector: 'app-root',
standalone: true,
imports: [RouterModule],
template: `
<h1>Hello from {{ name }}!</h1>
<a routerLink="./" fragment="goto"> go to anchor </a>
<div class="scroll-container">
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div>lorem ipsum</div>
<div id="goto">lorem ipsum to goto</div>
</div>
`,
styles: `
.scroll-container {
height: 200px;
overflow-y: auto;
}
#goto {
background: red;
}
`,
})
export class App {
name = 'Angular';
}
const APP_ROUTES: Route[] = [
{
path: '',
redirectTo: 'sample-1',
pathMatch: 'full',
},
{
path: '**',
redirectTo: 'sample-1',
},
];
const scrollConfig: InMemoryScrollingOptions = {
scrollPositionRestoration: 'top',
anchorScrolling: 'enabled',
};
const inMemoryScrollingFeature: InMemoryScrollingFeature =
withInMemoryScrolling(scrollConfig);
bootstrapApplication(App, {
providers: [
provideRouter(
APP_ROUTES,
withComponentInputBinding(),
inMemoryScrollingFeature
),
],
});