- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用带有钩子(Hook)的 Preact。我有以下按钮组件:
export function Button(props) {
return (
<button class={props.class}>{props.children}</button>
);
}
export function Parent(props) {
const buttonElm = useRef(null);
useEffect(() => {
console.log(buttonElm.current);
// Animate button using popmotion or similar
});
return (
<div>
<Button ref={buttonElm}>Click me to animate</Button>
</div>
);
}
buttonElm.current
指向 JSX 对象,即
Button
但不是 DOM 元素
button
.我需要
buttonElm
指向实际的 DOM 元素。
我怎么做?
Should I go ahead and use
buttonElm.current.base
property? But that does not feel idiomatic with hooks.
ref
如何当我在使用 <Fragment />
返回多个元素的 Preact 组件上设置它时的行为. div
但这会导致比解决问题更多的动画问题)最佳答案
您需要通过ref
如props
到您的子组件。通过这样做buttonElm
将指向实际的 Button DOM 元素。
export function Button(props) {
return (
<button class={props.class} ref={props.buttonElm}>{props.children}</button>
);
}
export function Parent(props) {
const buttonElm = useRef(null);
useEffect(() => {
console.log(buttonElm.current);
// Animate button using popmotion or similar
});
return (
<div>
<Button buttonElm={buttonElm}>Click me to animate</Button>
</div>
);
}
关于javascript - Preact 中如何通过 hooks 访问子组件的 DOM 元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59744871/
我目前正在使用 CLI 构建 Preact PWA。 我的理解是,无论我在哪里使用 JSX 定义了组件,我都需要 import { h } from 'preact'在文件的顶部。 我删除了该导入语句
我有一个非常简单的 react 程序,它使用脚本命令和 cdn 导入 react 。 如何在保持相同结构的同时将其转换为预执行? 我试着关注 these说明,但不是很清楚
使用 Preact CLI 是否可以设置应用程序将在根目录之外托管的路径? 例如在 http://mywebsite.com/relativepath/index.html 托管应用程序 最佳答案 您
Preact 标记为 8.5kb,是 Preact 大小的一半。有没有一种方法可以渲染原始 HTML 而无需解析它? 我能想到的一种方法是渲染一个占位符,然后使用innerHTML替换componen
我使用以下堆栈: “依赖”:{ "preact": "^8.2.1", “预兼容”:“^3.17.0”, “preact-redux”:“^2.0.3”, “预路由器”:“^2.5.5”, “redu
如果您在 https://startupguide.vercel.app/ 上访问我的 Preact 应用程序并单击“名称生成器”,您将只看到名称生成器表单(应该如此)。但是如果你去https://s
我只是试图理解Preact信号,所以可能我做错了什么,但我试图允许用户更新一个值,但每当他们这样做时,它就会恢复到缺省值。如果我将其记录下来,它确实会显示更改后的值,但会立即恢复。我是不是遗漏了什么?
I'm just trying to get to grips with Preact Signals so maybe I'm doing something wrong but I'm tr
我正在运行一个带有 preact build 的 preact 项目并按如下方式进行导入:import PresenceToggleAlert from 'async?name=presenceTog
React具有 refs 的概念。 Preact中是否有类似的概念可以在不使用preact-compat的情况下使用? 我希望能够在没有DOM查找的情况下引用Component方法中的元素。 谢谢!
我正在创建一个使用 tsParticles 的 Preact 组件库,但什么也没有出现。 我正在移植 React project但可能有些地方不兼容。 您可以在此处 checkout 组件:https
我对 preact 很陌生,我正在尝试在 preact 中实现 PWA。特别是,此示例应显示人员 ID 列表。 这是index.html页面:
今天我尝试在 webpack 中使用 CSS。它几乎对我有用。 这是目标代码。在浏览器类属性中为空。我尝试了具有相同结果的 className,但 CSS 代码包含在包中。 import css fr
我正在使用 Preact(出于所有意图和目的,React)来呈现保存在状态数组中的项目列表。每个项目旁边都有一个删除按钮。我的问题是:单击按钮时,删除了正确的项目(我多次验证了这一点),但是重新呈现的
Preact CLI声称它支持CSS Modules盒子外面。所以这就是我尝试过的;给定 2 个文件 index.js和 index.module.scss在同一个文件夹中,我尝试了这个: index
简单地导入样式组件会导致浏览器控制台中出现此错误: styled-components.browser.esm.js?face:1670 Uncaught TypeError: (0 , _react
在可编辑的前置元素上,我仅在按下 Enter 键时运行 onKeyDown 脚本,以避免文本中出现不需要的 HTML 元素。 render({}, {content}) { conso
我是 Preact 的新手,我必须为 Preact 中的应用程序编写单元测试用例。我发现 jest 和 enzyme 可以用于相同的用途,但我每次都会遇到错误。谁能推荐一些关于如何在 Preact 上
我对react.js(使用preact)还很陌生,并且遇到了异步路由(preact-async-router)的问题。 我的main.js: import { h, render } from 'pr
我已经使用 preact-cli 创建了一个应用程序,如下所示: preact create 但是没有“索引”页面,我也看不到任何工作脚本或构建文件夹。所以我在徘徊如何访问这些,例如,我可以更改页
我是一名优秀的程序员,十分优秀!