小编Mon*_*LiH的帖子

如何剪切 HTML 以便保留结束标记?

如何创建以 HTML 格式存储的博客文章的预览?换句话说,我如何“剪切”HTML,确保标签正确关闭?目前,我正在前端渲染整个内容(使用 react dangerouslySetInnerHTML),然后设置overflow: hiddenheight: 150px。我更喜欢一种可以直接剪切 HTML 的方式。这样我就不需要将整个 HTML 流发送到前端;如果我有 10 个博客文章预览,那将是很多访问者甚至看不到的 HTML 发送。

如果我有 HTML(说这是整个博客文章)

<body>
   <h1>Test</h1>
   <p>This is a long string of text that I may want to cut.. blah blah blah foo bar bar foo bar bar</p>
</body>
Run Code Online (Sandbox Code Playgroud)

尝试对其进行切片(以进行预览)将不起作用,因为标签将变得不匹配:

<body>
   <h1>Test</h1>
   <p>This is a long string of text <!-- Oops! unclosed tags -->
Run Code Online (Sandbox Code Playgroud)

我真正想要的是这个:

<body>
   <h1>Test</h1>
   <p>This is a long string of text</p>
</body>
Run Code Online (Sandbox Code Playgroud)

我正在使用 next.js,所以任何 node.js 解决方案都应该可以正常工作。有没有办法做到这一点(例如 next.js 服务器端的库)?或者我只需要自己解析 HTML(服务器端)然后修复未关闭的标签?

html javascript server-side next.js

7
推荐指数
1
解决办法
155
查看次数

在一个网站上使用多个主题 jeykll

我最近发现了jekyll,并想用它制作一个项目登陆页面。我想有一个使用一个主题(例如ubuild)的主页,并有另一个使用不同主题(例如just-the-docs)的文档页面(通过顶部的导航栏访问)。我该怎么做呢?

编辑:我想为此使用 Github Pages。

ruby jekyll jekyll-theme

6
推荐指数
1
解决办法
1018
查看次数

将模块内的所有函数和类导入到python类中

我正在尝试将所有对象从子文件夹导入python 3.8中的类,并在努力寻找一种方法来这样做。我不想手动导入所有对象,因为要列出的文件太多:

class Foo:
    from bar import {
        one,
        two,
        three,
        # ...
    }
Run Code Online (Sandbox Code Playgroud)

当我使用星号导入所有函数和类(例如from bar import *)时,出现以下错误:

SyntaxError: import * only allowed at module level
Run Code Online (Sandbox Code Playgroud)

另外,我也不希望将所有内容放在子作用域下(例如import bar.package,将所有文件放在的package子包中bar),因为函数在运行时bar依赖于传递self,这意味着必须更改selfself.packageI的所有引用仅使用该类中的所有方法创建另一个文件夹,以便没有单个极长的文件。

所以我想我有三个问题:为什么不允许在一个类中全部导入,如何解决这个问题,还有更好的方法将多个方法拆分为不同的文件吗?

编辑:我看过这篇文章是我目前所拥有的,但是我不想使用手动导入所有内容,而是代替了手动导入所有内容*

编辑2:也许创建一个类的子方法作为包并将其作为self导入是可行的(例如import bar.package as self),但这可能会覆盖默认的self。例如说我有两个文件foo.pybar.py

# foo.py
def print_bar(self):
    print("bar")
Run Code Online (Sandbox Code Playgroud)
# bar.py
class Test:
    import foo as self
    def __init__(self):
        print("hi")
        self.one = …
Run Code Online (Sandbox Code Playgroud)

python module class python-import python-3.x

5
推荐指数
1
解决办法
265
查看次数

PEG 和递归下降解析器之间的区别?

我最近遇到了 PEG 解析器,以及 Guido van Rossum关于 PEG 解析器文章以及如何构建它们。那篇文章讨论了“PEG”解析器,但在内部它看起来就像一个递归下降解析器(生成器)。我推断 PEG 解析器与生成递归下降解析器有关,但我不确定。

递归下降解析器和 PEG 解析器有什么区别?我什么时候应该使用其中一个?

parsing recursive-descent peg

3
推荐指数
1
解决办法
446
查看次数

固定侧边栏内的狮身人面像雪花石膏主题滚动

我制作了一个 sphinx 项目/文档(使用 alabaster 主题),左侧有一个固定的侧边栏(包含 TOC),但有太多内容无法在屏幕上显示。如何使该内容可滚动,同时仍允许右侧(正文)单独滚动?

我见过这个类似的问题,但只涉及您自己的网站,而不是 sphinx alabaster 主题文档。

html css scroll python-sphinx

2
推荐指数
1
解决办法
741
查看次数