table-functions 相关问题


cout << order of call to functions it prints?

以下代码: myQueue.enqueue('a'); myQueue.enqueue('b'); 计算<< myQueue.dequeue() << myQueue.dequeue(); prints "ba" to the console while: myQueue.enqueue('a'); myQueue.enque...


Azure Functions 资源组

我尝试在包含 ASP.NET Core API 应用程序的现有资源组中创建新的 Azure Functions 应用程序,但收到以下错误: LinuxDynamicWorkersNotAllowedInResourceGroup 发生在...


Firestore 触发器 Python 云函数(第 2 代)- 采用 1 个位置参数,但已给出 2 个

我已按照示例部署了 firestore 触发器函数 on_document_created:https://firebase.google.com/docs/reference/functions/2nd-gen/python/firebase_functions.firestore_fn#functions @


错误:ENOTDIR:不是目录,scandir './src/functions/.DS_Store' 这是什么以及如何修复它

节点:内部/fs/utils:351 抛出错误; ^ 错误:ENOTDIR:不是目录,scandir './src/functions/.DS_Store' 在 Object.readdirSync (节点:fs:1532:3) 在对象。(/我们...


services.AddMvc().ConfigureApiBehaviorOptions 的 Azure Functions 等效项是什么?如果不存在,必须采取什么方法?

我是 Azure Functions 的新手,请帮忙! 我的 WebAPI 中有以下代码来验证传递的每个参数并为每个参数抛出相应的错误。错误是


尽管已安装,但找不到模块“@tanstack/react-table”

我正在开发一个 TypeScript React 项目,我正在尝试从 columns.tsx 文件中的 @tanstack/react-table 导入 ColumnDef。 从“@tanstack/react-table”导入{ColumnDef}; 出口...


理解“?”的使用在 Dart 函数参数中(bool?)

在探索 Dart 的过程中,我在 Dart 语言之旅 (https://dart.dev/guides/language/language-tour#functions) 中遇到了以下代码片段: /// 设置 [bold] 和 [hidden] 标志 ...


如何在 cockroachdb/postgresql 中执行相当于 ADD CONSTRAINT IF NOT EXISTS 的操作?

大多数 PostgreSQL 语句支持 IF NOT EXISTS 子句以允许幂等迁移,例如CREATE TABLE IF NOT EXISTS foo .... 但 ALTER TABLE ... ADD CONSTRAINT 不存在。我怎样才能写...


在MySQL中,desc和desc table命令有什么区别?

desc 表名; 和 desc 表 表名; 给出不同的输出。有什么区别? 我想查看表的结构,但不小心最终使用了 desc table 命令,它......


Azure Functions:强制 HTTPS 重定向

有一个azure函数,我通过httpClient创建了几个rest api请求到外部http api。 外部资源没有 https 地址,所以我只能使用 http。所有 httpClient 请求都会发送到...


Firebase Cloud Functions 无法读取硝基生成的 index.mjs 文件

编辑: 我想将 Nuxt3 应用部署到 Firebase 托管。我已将 Nitro 的部署预设设置为“firebase”NITRO_PRESET=firebase,并且构建步骤运行良好。然而,当我运行 fi...


如何在mysql中添加登录尝试

如何使用php代码在mysql上添加登录尝试? :ALTER TABLE 用户添加列 login_attempts INT DEFAULT 0; ALTER TABLE 用户添加列 login_attempts INT DEFAULT 0; 但是php代码怎么样呢? 我有...


Flink 1.15 toRetractStream 转换错误:不支持收回流的 Legacy 转换

我正在将 Flink 1.9 升级到 1.15.2,并且使用 Table API 到 Datastream API 转换 (flink-table-api-scala-bridge) 的应用程序出现错误(见下文)。 环境: 弗林克:1.15.2 斯卡拉 2.1...


在 Google Cloud Functions 上运行不受信任的代码

我想运行不受信任的 JavaScript 代码,因此我想使用函数作为沙箱,用户可以在其中运行简单的 JavaScript。 我实际上尚未列入使用 Google Cloud 功能的白名单,但是...


HTTP 调用需要 4 分钟以上才能在 Azure Functions 上看到它

自上周以来,我们在向 Azure 函数发出 HTTP 请求时开始看到奇怪的行为。 一些背景: 这是一个 Linux 计划,在 P1v3 层上运行,1 个实例,始终开启,因为...


JPA 映射(OneToMany、ManyToOne)

销售类 @实体 @Table(名称=“销售”) @AllArgsConstructor @NoArgs构造函数 @FieldDefaults(级别 = AccessLevel.PRIVATE) @数据 公开课促销{ @ID @GenerateValue(策略 =


有没有办法在有条件的情况下隐藏v-data-table中的展开按钮?

借助 v-data-table 中的“show-expand”属性,展开按钮会显示在数据表的所有行中。 借助 v-data-table 中的“show-expand”属性,展开按钮会显示在数据表的所有行中。 <v-data-table :expanded.sync="expanded1" :headers="headers1" :items="items" show-expand class="elevation-1" > 有没有办法根据 Vuetify 3 中的条件进行渲染? 在 Vuetify 2 中,使用 item.data-table-expand 插槽来实现此目的。 <template #item.data-table-expand="{ item, expand, isExpanded }"> <td v-if="item?.versions?.length > 0" class="text-start"> <v-btn variant="text" density="comfortable" @click="expand(!isExpanded)" class="v-data-table__expand-icon" :class="{ 'v-data-table__expand-icon--active': isExpanded }" > <v-icon>mdi-chevron-down</v-icon> </v-btn> </td> </template> 但是,在 Vuetify 3 中使用相同的代码块会返回类型错误: Uncaught TypeError: expand is not a function expand 现在是 toggleExpand 并期望 internalItem 插槽道具 <template #item.data-table-expand="{ item, internalItem, toggleExpand, isExpanded }"> <td v-if="item?.versions?.length > 0" class="text-start"> <v-btn variant="text" density="comfortable" @click="toggleExpand(internalItem)" class="v-data-table__expand-icon" :class="{ 'v-data-table__expand-icon--active': isExpanded }" > <v-icon>mdi-chevron-down</v-icon> </v-btn> </td> </template>


如何利用v-data-table中的item-class来增加字体大小?

我对 VueJs 比较陌生,并尝试将我的 v-data-table 项目(Vuetify 2)中的字体大小更新为 20px。在这样做的过程中,我遇到了物品等级。这种方法对 chang 来说是成功的...


如何从一个文件调用包含 Navigator.pushNamed 的函数到另一个文件?

我对 Flutter 还很陌生,我想创建一个名为 Functions 的单独文件,在其中可以保留所有函数,然后从另一个文件中调用它们。在这个函数文件中我有这个函数...


Alpine.js 和 jQuery DataTables,x-on:在表内触发时单击功能不全

我的 Laravel 和 Alpine.js 刀片页面中有此表。 名字 我的 Laravel 和 Alpine.js 刀片页面中有此表。 <table id="projects-table"> <thead> <tr> <th>name</th> <th>actions</th> </tr> </thead> <tbody> @foreach($projects as $project) <tr> <td>{{ $project->name }}</td> <td><button x-data="{}" x-on:click="$dispatch('open-modal', 'edit-project')">edit</button></td> </tr> @endforeach </tbody> </table> 有了它,我有了这个 JavaScript 代码,可以将其转换为 jQuery DataTable document.addEventListener('DOMContentLoaded', function () { new DataTable('#projects-table'); }); 现在发生的情况是,当我单击 button 内的 td 时,我的模式不会触发 当表不是 DataTable 时,一切正常。 基本上发生了什么(可能),当 jQuery 操作元素时,@click 事件不会触发。有任何已知的修复方法吗?感谢所有帮助。 解决方案是将表包含在由 Alpine 控制的标签中,并在 Alpine 启动后初始化 DataTable: <div x-data> <table id="projects-table"> <!-- ..... --> </table> </div> <script> document.addEventListener('alpine:init', () => { new DataTable('#projects-table') }); </script> 通过这种方式,Alpine 可以检测到 DOM 何时被 DataTables 更改,然后重建他的引用。 否则,在您的具体情况下,您可以使用 vanilla JS 发送自定义事件并保持其他内容不变: <!-- ..... --> <td> <button onclick="window.dispatchEvent(new CustomEvent('open-modal', { detail: 'edit-project' }))"> Edit </button> </td> <!-- ..... --> <!-- Simple example for the modal triggering --> <div x-data="{isOpen: false}" x-show="isOpen" @open-modal.window="isOpen = true"> I'm open! <div>


迁移到 Hibernate 6:持久化 ArrayList

我有以下实体定义: 导入 java.io.Serialized; 导入 java.time.ZonedDateTime; 导入java.util.ArrayList; @盖特 @塞特 @Entity(名称 = "轨迹地理数据") @Table(名称= ...


如何使用PowerQuery将数据导入Oracle

我通常通过PowerQuery连接Oracle和Excel。例如,我在 Excel 中下载 Oracle SERVER.TABLE,执行以下操作: = Odbc.Query("dsn=SERVER", "SELECT * FROM TABLE;"...


如何使用 FOSCKEditorBundle 处理插件的自定义默认值?

我想覆盖“table”插件的默认值,例如cellspadding(txtCellSpace)。 使用: 交响乐:6.4 Friendsofsymfony/ckeditor-bundle: v2.4 (CKeditor v4 in...


如何在同一查询上区分按年份和按类别分组?

我想在distinct和groupby之后查询结果 这是我的代码 $结果 = DB::table('dokumen') ->join('pengadaan', 'dokumen.id_jenis_pengadaan', '=', 'pengadaan.id') ...


在 SQL Developer 上运行创建表学生时出错:CREATE TABLE Students

创建表学生( 年号(4) NOT NULL, 学期 VARCHAR2(1) NOT NULL CONSTRAINT Stu_sem_ck CHECK (学期 IN ('1', '2', '3')), 部门 VARCHAR2(3) NOT NULL, 课程编号...


Hibernate 更新后无法在视图上使用关联

场景是这样的: EntityA 和 EntityB 之间存在一对多关联: @实体 @Table(名称=“实体A”) 实体A类{ @ID 长 idEntityA; @OneToMany(映射...


创建分区时,Athena Iceberg 目前不支持查询类型

我在 Athena 中运行以下 sql 来创建分区 ALTER TABLE 数据库.表 ADD 分区(分区一='123',分区二='456') 位置 's3:///data/


当偏移量设置为2时,Snowflake SQL输出从0开始

在 Snowflake 中运行以下查询: SELECT seq8() FROM table(generator(rowCount => 5)) limit 3 offset 2; 为什么offset设置为2时输出是从0开始的?


数组工厂 Laravel 上的随机选择值

我进行了用户迁移: $table->enum('type',['卖家','买家'])->default('卖家'); 我想在使用 ModelFactory 时如何获得随机值卖家或买家? $factory->define(App\User::class,


RMarkdown 更改 PDF 文档中表格的编号

我想更改RMarkdown文档中表格的编号,以便附录中的所有表格在数字前面都有一个“A-”,即:“Table A-2”。 仅在应用程序中...


在添加新行时刷新 html 可编辑表格 - Bootstable

我使用 boostable 插件在运行时内联编辑 HTML 行。该插件位于 https://www.jqueryscript.net/table/Editable-Tables-jQuery-Bootstrap-Bootstable.html。问题是现在当我想要的时候


变换视图表

我想根据 SSMS (SQL Server) 中的源表在我的数据库中创建一个 VIEW TABLE。 但获得想要的视图表格式非常困难。 这里我举一个源表的例子。 C...


如何在 PostgreSQL 的 phinx 中将 'id' 设置为大整数并自动增量?

我尝试仅设置为biginter,但它失去了自动增量属性。所以我也尝试添加自动增量。 $table->changeColumn('id', 'biginteger', ['identity' => true])->update()...


JPA @Entity 注解的确切含义是什么?

我正在研究Spring应用程序中的JPA,我对@Entity注释有一些疑问。 所以我有一个像这样的模型类: @实体 @Table(名称=“T_CUSTOMER”) 公共类客户{ ...


创建不带实体表类的@Query select

从数据库返回 Json 而不使用 @Table(tableName) @Entity 等的代码应该是什么样的? 例如,该 CustomResponse 未映射到数据库表,但通过该选择我想要 得到


prime ng p-table 页脚将超过 tr 的

我正在使用 prime-ng 表,我尝试在表底部放置一个按钮 我希望这个按钮始终靠近表格底部 但页脚超出了最后一个 我在这里...


如何在Tanstack Table中显示图片和链接?

我正在尝试使用 Tanstack 库在表格中显示图像和链接,但无法进入 UI。在名称列中,我想添加链接并希望显示图像。图片正确


如何使用 ssp.class.php 连接两个表

我开始使用 jQuery 的 DataTables Table 插件并遇到了一些问题。我正在使用这里的示例代码。 我的 MySQL 表看起来像这样: 编号 |名称 |父亲 ID father_id 是 va...


调用未定义的方法 App\Models\Post::getContent()

所以我昨天才开始使用 Laravel 和 Orchid... 现在我遇到了这个问题 我想为所有帖子创建一个数据页面 所以我创建布局:PostListLayout PostListLayout 类扩展了 Table...


primeng 表中的延迟加载

我有一个带有 p-dropdown 和 p-table 的组件。当我在下拉列表中选择项目时,我想延迟加载此组件中 p 表中的数据。有可能吗?当我尝试时,我只是懒惰......


无法将存储过程结果插入 Babelfish Aurora Postgres 的临时表中

我在将存储过程的结果插入 Babelfish Aurora Postgres (AWS) 中的表变量中时遇到问题。这是我正在使用的代码: 声明 @temp TABLE (col1 int, col2 int, col3 int...


QTableWidgetItem.itemAt(pos) 在 contextMenu 请求上始终返回 0

我有一个插槽,可以根据给定的点创建上下文菜单。但是,无论我使用哪种方法从该点返回位置,table->itemAt(pos) 总是返回 0。有什么办法可以Pri...


我不明白如何使用jsonb和Spring Data JDBC将实体保存到数据库

我的 Spring Boot 应用程序中有一个实体: @数据 @AllArgsConstructor @Table(名称=“我的文件”) 公共类我的文件{ @Id私有长id; 私有字符串内容; } 这是表格


使用 echo 或 var_dump 循环打印给出三个值,但 dd() 只给出第一个值

我的查询中有一个匹配的行。 echo $结果给出 100 dd($结果) 给出 1 var_dump($result) 给出 int(1) int(0) int(0) 这里发生了什么? 相关代码: $结果= DB::table('答案'...


如何从TableView中删除蓝色焦点边框?

我正在设计一个TableView 的样式。我将边框颜色设置为白色(与背景颜色相同),因此它是不可见的。但是,当表格获得焦点时,边框会变成蓝色。我尝试添加 table-view:focuse...


带有边框半径和粘性标题的 HTML 表格

我有一个 HTML ,带有边框半径和使用位置的粘性标题:sticky,如下所示: https://codepen.io/muhammadrehansaeed/pen/OJpeeKP 但是,当使用 滚动时 我有一个带有 <table> 的 HTML border-radius 和使用 position: sticky 的粘性标题,如下所示: https://codepen.io/muhammadrehansaeed/pen/OJpeeKP 但是,当使用粘性标题滚动时,表格行会伸出粘性标题的圆角所在的位置。请参阅此图片的左上角: 有没有办法可以在使用粘性标题向下滚动时保持圆角,或者在标题变得粘性并从原始位置向下移动时删除粘性标题?理想情况下,我想要一个CSS解决方案。 您可以使用伪元素隐藏边框的某些部分: table thead th:first-child::before, table thead th:last-child::after { width: 1px; height: 5px; background: white; content: ""; display: block; position: absolute; top: 0px; } table thead th:first-child::before { left: -1px; } table thead th:last-child::after { right: -1px; } 正如Ivan建议的那样,似乎使用伪元素来覆盖标题下方不需要的边框是(令人惊讶的)唯一可行的选择。我建议使用伪不仅用于覆盖“外部”区域,而且还用于绘制弧线和填充“内部”区域。可以使用堆叠背景来做到这一点。应用于原始代码: /* § Additions / Changes */ table thead th { position: relative; } /* Pseudos exceeding header boundary by border width; with rectangle covering half circle and rest of height */ table thead th:last-child::after, table thead th:first-child::before { content: ""; position: absolute; top: 0; bottom: 0; left: calc(-1 * var(--global-border-width-1)); width: var(--global-border-radius); background-image: linear-gradient(to bottom, transparent var(--global-border-radius), var(--global-title-color) 0), radial-gradient(circle at var(--global-border-radius) var(--global-border-radius), var(--global-title-color) var(--global-border-radius), var(--global-content-background-color) 0); background-position: top left; background-size: var(--global-border-diameter) 100%, var(--global-border-diameter) var(--global-border-diameter); background-repeat: no-repeat; } table thead th:last-child::after { left: auto; right: calc(-1 * var(--global-border-width-1)); background-position: top right; } /* § Declarations and original style */ html { --global-content-background-color: white; --global-title-color: black; --global-background-color: lightblue; --global-border-color: black; --global-border-radius: 20px; --global-border-width-1: 10px; --global-space-fixed-2: 10px; --global-space-fixed-3: 15px; --global-border-diameter: calc(2 * var(--global-border-radius)); background-color: var(--global-content-background-color); } table { color: var(--global-title-color); background-color: var(--global-content-background-color); border-collapse: separate; border-color: var(--global-title-color); border-style: solid; border-radius: var(--global-border-radius); border-width: 0 var(--global-border-width-1) var(--global-border-width-1) var(--global-border-width-1); border-spacing: 0; width: 100%; } table thead { position: sticky; top: 0; z-index: 10; } table thead th { color: var(--global-background-color); background-color: var(--global-title-color); padding: var(--global-space-fixed-2) var(--global-space-fixed-3); vertical-align: bottom; } table tbody td { border-top: var(--global-border-width-1) solid var(--global-border-color); padding: var(--global-space-fixed-2) var(--global-space-fixed-3); vertical-align: top; } table tbody tr:last-child td:first-child { border-bottom-left-radius: var(--global-border-radius); } table tbody tr:last-child td:last-child { border-bottom-right-radius: var(--global-border-radius); } /* § Unrelated / demo */ * { scroll-margin-top: calc(var(--global-space-fixed-2) * 4 + 1rem); /* = height of sticky thead + top padding of cell, provided text in thead does not wrap */ scroll-margin-bottom: 1em; } td { height: 60vh; } td a { float: right } tr:last-child td { vertical-align: bottom; } a[name]:empty::before { content: attr(name); } th:not(#\0):hover::before { background-image: linear-gradient(to bottom, transparent var(--global-border-radius), #0F08 0), radial-gradient(circle at center, #00F8 var(--global-border-radius), #F2F4 0); background-position: top left; background-size: var(--global-border-diameter) 100%, var(--global-border-diameter) var(--global-border-diameter); } <table> <thead> <tr> <th>Fake non-transparent "border-radius"</th> </tr> </thead> <tbody> <tr> <td> <a href="#⬆️" name="⬇️"></a> For fixed header</td> </tr> <tr> <td> <a href="#⬇️" name="⬆️"></a> Using CSS stacked background images in pseudo elements</td> </tr> </tbody> </table> 只需从表格中删除边框,并为表格主体中的第一个和最后一个表格单元格添加左右边框: tbody td:first-child { border-left: 1px solid black; } tbody td:last-child { border-right: 1px solid black; } tbody tr:last-child td{ border-bottom: 1px solid black; } tbody tr:last-child td:first-child { border-bottom-left-radius: 2px; } tbody tr:last-child td:last-child { border-bottom-right-radius: 2px; } 当然是使用适当的缩进、嵌套和变量! 使用许多伪选择器看起来样式相当丑陋,但似乎可以解决您的问题。 有一个更紧凑的解决方案。只需将具有背景颜色的框阴影添加到第一个 < th > 和最后一个 < th > 即可隐藏元素。 在此示例中,在右侧,您可以看到表格行由于边框半径而可见。在左边,我应用了盒子阴影。 盒子阴影:0 -2.1rem 0 .6rem #E5E7EB; 在这里,它是灰色的,以便您可以看到它的工作原理,但您只需使用与背景相同的颜色即可使其完全不可见。 这是最终结果以及我正在使用的代码: th:第一个孩子 { 边界半径:0.75rem 0 0 0; 左边框:.1rem 实心 $color-gray-200; 框阴影:0 -2.1rem 0 .6rem $color-gray-200; } th:最后一个孩子{ 边界半径:0 0.75rem 0 0; 右边框:.1rem 实心 $color-gray-200; 盒子阴影:1rem -2.1rem 0 .6rem $颜色白色; } 可能需要调整框阴影以隐藏基于所选边框半径的行。 不确定你是否熟悉jquery,如果熟悉的话你可以在滚动内容时动态更改 border-top-left-radius: 等于粘性标题的半径,但这对于新手来说有点棘手jquery/JS。 其次,您可以将粘性标题封闭到父级(例如class="parent")),并将父级背景设置为白色,没有边框。并保持粘性标题的边框半径不变。因此,当您滚动内容时将位于该父级下方(例如 class="parent")。为了确保父级出现在该行上方,您可以给出 z-index: 10


Mantine React table 遇到两个孩子有相同的键错误

我正在尝试找到解决方案来修复使用mantine反应表时发生的此错误。当我尝试开玩笑地运行测试用例时,我遇到了同样的错误。 警告:遇到两个孩子有...


从右到左打印表格单元格

我制作了一个表格,并希望第一个单元格从右侧开始,而不是默认从左侧开始。 我尝试更改 CSS 中的 float 属性,但似乎没有帮助。 这是代码: 我制作了一个表格,并希望第一个单元格从右侧开始,而不是默认从左侧开始。 我尝试更改 CSS 中的 float 属性,但似乎没有帮助。 这是代码: <table border="0" width="100%" cellspacing="0" align="center" class="result_table"> <tr align="right"> <th bgcolor="#cccccc" align="right">1</th> <th bgcolor="#cccccc" size="17">2</th> <th bgcolor="#cccccc">3</th> <th bgcolor="#cccccc">4</th> </tr> </table> <style> table.result_table { float:right; } </style> 任何人都可以建议一种方法来改变这张桌子的浮动吗? 正如评论中所建议的,您可以将方向性设置为从右到左(RTL)。但是,除非您的表格内容采用从右到左的语言,否则您还应该将表格内容元素中的方向性设置为从左到右。否则,它们继承 RTL 方向性,这在许多情况下会引起意外,因为方向性还设置整体文本方向性。这不会影响西方语言的正常文本,但会影响例如像“4 (5)”这样的内容,在 RTL 方向性下会显示为“(5) 4”。 因此,您应该设置 table.result_table { direction: rtl; } table.result_table caption, table.result_table th, table.result_table td { direction: ltr; } 有一种更简单的方法。您可以将 dir="rtl" 添加到表格中。 <table dir="rtl"> ... </table> 或者您可以使用 CSS 而不是使用 HTML 属性: <table style="direction:rtl"> ... </table> 我不确定这是否可以仅使用 CSS 来实现。如果使用 jQuery 适合您,这里有一个起始想法,可能会让您获得所需的结果: CSS: .result_table{float:left; width:100%; border-collapse:collapse; padding:0;} .result_table th{float:right; padding:0;} JS: var cols = $('.result_table th').length; var colWidth = 100 / cols; $('.result_table th').css({width:colWidth+'%'}) 示例 - jsFiddle


向垫子表添加额外的行

所以我有一张垫子桌 所以我有一张垫子桌 <mat-table class="table" cdkDropList cdkDropListOrientation="horizontal" (cdkDropListDropped)="tableDrop($event)" [dataSource]="tableDataSource"> <ng-container *ngFor="let column of columns; let i = index" [matColumnDef]="column.name"> <mat-header-cell *matHeaderCellDef cdkDrag dkDragLockAxis="x" cdkDragBoundary="mat-header-row"> {{ column.title }} </mat-header-cell> <mat-cell *matCellDef="let element"> {{ element[column.name] }} </mat-cell> </ng-container> <mat-header-row class="tableHeader" *matHeaderRowDef="tableDisplayedColumns" #tableHeaderRow> </mat-header-row> <mat-row class="tableRow" *matRowDef="let row; columns: tableDisplayedColumns;" [class.selected-row]="tableSelectedRows.has(row)" (click)="selectUnselectRow(row)"> </mat-row> </mat-table> 但我需要在表标题下为相应的行过滤器添加一行。我尝试在标题和实际行声明之间添加 <mat-row> ,但是由于过滤器是不同的输入(例如数字、自动完成选择和多选),我无法 *ngFor 它们(而且我不是当然我是否能够) 编辑:忘记发布过滤器 HTML <div class="filterGroup"> <mat-form-field class="filterField"> <input matInput type="number" (keydown)="updateManualPage(1)" placeholder="Filter za param1" formControlName="filterParam1"> </mat-form-field> <mat-form-field class="filterField"> <input matInput (keydown)="updateManualPage(1)" placeholder="Filter za param2" formControlName="filterParam2" [matAutocomplete]="autoSingleSelect"> <mat-autocomplete #autoSingleSelect="matAutocomplete" class="filterSelect" panelClass="filterSelect"> <mat-option *ngFor="let option of dropdownSingleFilteredOptions | async" [value]="option.param2"> {{option.param2}} </mat-option> </mat-autocomplete> </mat-form-field> <mat-form-field class="filterField"> <mat-select class="filterMultiselect" placeholder="Filter za param3" formControlName="filterParam3" multiple panelClass="filterMultiselect"> <mat-option *ngFor="let option of tableDataSource.data" [value]="option.param3"> {{option.param3}} </mat-option> </mat-select> </mat-form-field> </div> 以及相关组件.ts tableDisplayedColumns: string[] = ['param1', 'param2', 'param3']; columns: any[] = [ { name: 'param1', title: 'Param1' }, { name: 'param2', title: 'Param2' }, { name: 'param3', title: 'Param3' } ]; 为了解决这个问题,我设法通过删除 *ngFor 并手动放入过滤器来做到这一点。 <mat-table class="table" cdkDropList cdkDropListOrientation="horizontal" (cdkDropListDropped)="tableDrop($event)" [dataSource]="tableDataSource"> <ng-container matColumnDef="param1"> <mat-header-cell *matHeaderCellDef cdkDrag cdkDragLockAxis="x" cdkDragBoundary="mat-header-row" [cdkDragStartDelay]="100"> Param1 <mat-form-field class="filterField"> <input matInput type="number" (keydown)="updateManualPage(1)" placeholder="Filter" formControlName="filterParam1"> </mat-form-field> </mat-header-cell> <mat-cell *matCellDef="let data"> <span>{{data.param1}}</span> </mat-cell> </ng-container> <ng-container matColumnDef="param2"> <mat-header-cell *matHeaderCellDef cdkDrag cdkDragLockAxis="x" cdkDragBoundary="mat-header-row" [cdkDragStartDelay]="100"> Param2 <mat-form-field class="filterField"> <input matInput (keydown)="updateManualPage(1)" placeholder="Filter" formControlName="filterParam2" [matAutocomplete]="autoSingleSelect"> <mat-autocomplete #autoSingleSelect="matAutocomplete" class="filterSelect" panelClass="filterSelect"> <mat-option *ngFor="let option of dropdownSingleFilteredOptions | async" [value]="option.param2"> {{option.param2}} </mat-option> </mat-autocomplete> </mat-form-field> </mat-header-cell> <mat-cell *matCellDef="let data"> <span>{{data.param2}}</span> </mat-cell> </ng-container> <ng-container matColumnDef="param3"> <mat-header-cell *matHeaderCellDef cdkDrag cdkDragLockAxis="x" cdkDragBoundary="mat-header-row" [cdkDragStartDelay]="100"> Param3 <mat-form-field class="filterField"> <mat-select class="filterMultiselect" placeholder="Filter" formControlName="filterParam3" multiple panelClass="filterMultiselect"> <mat-option *ngFor="let option of tableDataSource.data" [value]="option.param3"> {{option.param3}} </mat-option> </mat-select> </mat-form-field> </mat-header-cell> <mat-cell *matCellDef="let data"> <span>{{data.param3}}</span> </mat-cell> </ng-container> <mat-header-row class="tableHeader" *matHeaderRowDef="tableDisplayedColumns" #tableHeaderRow> </mat-header-row> <mat-row class="tableRow" *matRowDef="let row; columns: tableDisplayedColumns;" [class.selected-row]="tableSelectedRows.has(row)" (click)="selectUnselectRow(row)"> </mat-row> </mat-table>


CSS 在窄屏幕上显示每个单元格一行的表格

我的 HTML 看起来有点像这样 我的 HTML 看起来有点像这样 <html><body><table> <thead><tr><th>A</th><th>B</th><th>C</th><th>D</th><th>E</th></tr></thead> <tbody> <tr><td>1A</td><td>1B</td><td>1C</td><td>1D</td><td>1E</td></tr> <tr><td>2A</td><td>2B</td><td>2C</td><td>2D</td><td>2E</td></tr> <tr><td>3A</td><td>3B</td><td>3C</td><td>3D</td><td>3E</td></tr> </tbody> </table></body></html> 每一行代表一个对象,列是它的属性。实际上,单元格值相当长——有时甚至有 20-30 个字符长。它在大多数设备上渲染良好,但在较小的手机上可能会出现问题。我知道我可以在狭窄的设备上抑制某些列,但在这个特定的情况下感觉不太好。目前我的桌子上有 x-overflow: scroll,但我更希望有一些 CSS 可以使表格在窄设备上呈现得更像这样: A: 1A B: 1B C: 1C D: 1D E: 1E ----- A: 2A B: 2B C: 2C D: 2D E: 2E ----- (etc) 我了解如何测试设备宽度,因此出于这个问题的目的,我们假设我想无条件地执行此操作。稍微更改一下 HTML 标记就可以了,例如添加额外的类或属性,尽管我想使用 <table> 元素来保留它,每个逻辑行有一个 <tr>。这是为了向后兼容,因为我知道有相当多的用户会抓取该网站(尽管存在更简洁的 API)。由于内部政治,如果可能的话,我宁愿避免需要 Javascript 的解决方案(并且无论如何,如果需要,我知道如何编写 JS 解决方案)。 我可以做到这一点,但我不知道如何从这里硬编码为“X”的字段名称开始: thead { display: none; } table, tr, td { display: block; } tr + tr { border-top: thin solid black; } td::before { content: "X:"; display: inline-block; width: 2em; } 我见过很多网站都在做这种事情,但目前我正在努力寻找一个在 CSS 中做这件事的网站。看起来这应该是一个常见问题,但我很难知道要搜索哪些术语,因此可能会在这里或其他地方错过一些很好的解释。 你就快到了。可能会使用例如data-col 元素上的 <td> 属性并在 CSS 中引用它们 content 上的 :before thead { display: none; } table, tr, td { display: block; } tr+tr { border-top: thin solid black; } td::before { content: attr(data-col)':'; display: inline-block; width: 2em; } <table> <thead> <tr> <th>A</th> <th>B</th> <th>C</th> <th>D</th> <th>E</th> </tr> </thead> <tbody> <tr> <td data-col="A">1A</td> <td data-col="B">1B</td> <td data-col="C">1C</td> <td data-col="D">1D</td> <td data-col="E">1E</td> </tr> <tr> <td data-col="A">2A</td> <td data-col="B">2B</td> <td data-col="C">2C</td> <td data-col="D">2D</td> <td data-col="E">2E</td> </tr> <tr> <td data-col="A">3A</td> <td data-col="B">3B</td> <td data-col="C">3C</td> <td data-col="D">3D</td> <td data-col="E">3E</td> </tr> </tbody> </table> ABCD


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