有一种已知的技术可以在打开模式窗口时禁用页面滚动。
CSS:
html {
height: 100%;
}
body.disable-scroll {
position: fixed;
height: 100%;
overflow: hidden;
}
Run Code Online (Sandbox Code Playgroud)
HTML:
<!DOCTYPE html>
<html>
<head>
<title>Parcel Sandbox</title>
<meta charset="UTF-8" />
<meta content="width=device-width, initial-scale=1.0, user-scalable=no" name="viewport">
</head>
<body class="disable-scroll">
<div class="page-content">
<input type="text">
... content ...
</div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
但是在IOS上,打开虚拟键盘后,Safari滚动启用。而且它滚动的甚至更多window.innerHeight + window.scrollX。页面底部会出现一些空白。

编辑者的网址
https://codesandbox.io/s/condescending-snow-skuo5?fontsize=14
全屏url以在iPhone上检查
https://skuo5.codesandbox.io/
只需在iPhone或带有IOS 12+的XCode中打开,请尝试滚动,然后将焦点放在“输入”上,然后尝试再次滚动。
我正在开发包含 6 个音频和视频元素的项目,这些元素一个接一个地播放。问题前的代码顺序是这样的:
然后视频 1 播放 2-3 秒并停止发送错误代码 3(3 = MEDIA_ERR_DECODE - 解码时发生错误)。我试图通过链接播放相同的视频,并且播放正常。
此外,该问题在某些浏览器的某些操作系统上随机发生。例如:
更新仅在第一次查看或禁用缓存时才会在 Win10 最新版 Opera 上发生。
更新 2视频编解码器是 H.264,音频编解码器是 AAC,帧率是 24。
文件结构:
apps
-- app-1
-- app-2
libs
-- lib-1
-- lib-2
Run Code Online (Sandbox Code Playgroud)
我们有一些测试,仅当文件在lib-2. 我尝试过做
on:
push:
paths:
- 'libs/lib-2/**'
Run Code Online (Sandbox Code Playgroud)
但它仅lib-2在提交中推送文件时运行测试,但如果此后推送了其他文件,则它不会运行。想象一下,测试失败了lib-2,然后开发人员已经提交了lib-1下一次提交中的文件,并且测试不会针对之前的更改运行,并且 github 将认为检查成功。
如果某个目录中的文件在分支中发生更改,无论在哪个提交中,是否有办法运行操作?
每次路线更改都会渲染正确的组件,但路径存在问题。
例如,从 /items 导航到 /add-item 更改和 url 一秒钟,然后恢复它。
无论从哪里开始,到哪里去,它都会发生在每一页上。
导航
<a routerLink="/add-item">Add item</a>
Run Code Online (Sandbox Code Playgroud)
主要app.routes.ts
export const appRoutes: Routes = [{
path: 'brokers',
pathMatch: 'full',
redirectTo: '/'
},
{
path: 'sellers',
pathMatch: 'full',
redirectTo: '/'
},
{
path: 'buyers',
pathMatch: 'full',
redirectTo: '/'
},
{
data: { name: 'pageNotFound' },
path: '**',
redirectTo: '/404'
}];
Run Code Online (Sandbox Code Playgroud)
主页.routes.ts
export const homeRoutes: Routes = [{
component: HomePageComponent,
data: { name: 'homePage' },
path: ''
}
Run Code Online (Sandbox Code Playgroud)
页面未找到.routes.ts
export const pageNotFoundRoutes: Routes = [{
component: PageNotFoundComponent, …Run Code Online (Sandbox Code Playgroud) 我们可以使用 *ngIf 获取异步管道作为变量
<button *ngIf="account$ | async as account" (click)="parseAccount(account)" type="button"></button>
Run Code Online (Sandbox Code Playgroud)
但它当然不适用于布尔值,例如
<button *ngIf="loggedIn$ | async as loggedIn" (click)="checkAuth(loggedIn)" type="button"></button>
Run Code Online (Sandbox Code Playgroud)
因为loggedIn$ | async会发出假的。
是否有任何其他内置方法可以在不使用自定义 ngInit 指令的情况下获取异步值作为模板变量?