小编Tao*_*Ben的帖子

重新渲染我的 React 组件时,我的动画不起作用?

所以,我的问题是我有一个组件,我将一个动画与它相关联,并且在第一次渲染组件时它正在工作,但是在事件单击时我更改了与该组件关联的一些条件和一些道具,但是我的元素没有被重新渲染,它只是改变了已更改的内容,这意味着该元素不会从 dom 中删除,而是再次添加到 DOM 中,这就是为什么我无法再次看到动画,所以它不是 re -rendered 或者我只是没有明白重新渲染的意思。

我当然尝试了一些解决方案,但我被卡住了,我尝试使用这种方法:

this.forceUpdate();

但同样,我仍然没有得到任何东西。

我不认为我必须编写我编写的整个代码,因为它很多并且包含许多其他内容,但这是我认为需要的。

我的组件中的 methodWillReceiveProps :

  componentWillReceiveProps(props) {
    if (props.isRerendered) {
      this.forceUpdate();
    }
  }
Run Code Online (Sandbox Code Playgroud)

props.isRendered 每次都返回 true,我检查了一些 console.log 方法。

这是呈现的内容:

render() {
    return (
      <div
        className={cs({
          "tls-forms": true,
          "tls-forms--large": this.props.type === "S",
          "tls-forms--medium tls-forms--login": !(this.props.type === "S")
        })}
      >
      // content here 
      </div>);
 }
Run Code Online (Sandbox Code Playgroud)

这是 sass 文件和简单的淡入淡出动画:

.tls-forms {
  animation: formFading 3s;
  // childs properties here 
}

@keyframes formFading {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
} …
Run Code Online (Sandbox Code Playgroud)

javascript sass reactjs

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

Php Artisan 迁移超级慢?

我是 Laravel 的新手,我使用的是 5.7 版本,我正在学习一个看起来很好的课程,但我在 mysql 上创建了我的数据库,然后我尝试运行命令 - php artisan migrate - 花了很长时间,我明白了每次都很无聊,我取消了它,必须有更好的解决方案,因为它非常非常慢,我跟随他的课程的人像许多其他人一样迅速得到回应,有没有任何解决方案可以帮助我更快地行动,我我错过了什么?

任何帮助将非常感激。

php laravel

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

如何以干净的方式从类列表数组中获取特定类?

我今天遇到了一个问题,我花了几个小时才知道它是什么,所以我有一个元素,这个元素有很多类:

<div id="myId" class="first second iwantthisone fourth"></div>
Run Code Online (Sandbox Code Playgroud)

我正在使用列表中的一个类将其作为其他函数中的参数传递,因此为了获取它,我正在这样做:

 const myClass = document.getElementById('myId').classList[2];
Run Code Online (Sandbox Code Playgroud)

为什么我选择2?因为当我对 classList 执行 console.log 时,它给了我一个数组(不是常规数组),结果如下:

['first', 'second', 'iwantthisone', 'fourth']
Run Code Online (Sandbox Code Playgroud)

所以我以为我已经完成了,我将我的工作部署到服务器上,我去那里测试一切是否正常,但事实并非如此,这就是我在这里的原因,所以问题是数组中项目的顺序更改为这 :

['second', 'iwantthisone','first', 'fourth']
Run Code Online (Sandbox Code Playgroud)

所以我的旧代码工作时间更长,我需要这样做:

const myClass = document.getElementById('myId').classList[1];
Run Code Online (Sandbox Code Playgroud)

这是不切实际的,我需要使用数组过滤器之类的方法来获取类,但似乎我无法使用它,因为 classList 不是我之前提到的常规方法。

有什么解决办法吗?

任何帮助将非常感激。

javascript arrays class

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

我的 25% 宽度的柔性项目在包装后占用 100% 的宽度

我有一个小问题。我总是使用浮动来排列我的元素。我正在转向 Flexbox,我做了一些例子,一切都很好,但我正在做一个事情进展不顺利的例子。

我有一个容器,里面有 1 到 12 种产品,每行 4 种。我只使用四个元素做了一个简单的示例,它正在工作,但现在我正在制作一个包含五个元素的示例,第一行看起来不错,但第五个元素占用产品容器的 100%,但我希望它只占用 25 %,第六个占25%,依此类推。

这就是我所看到的:

在此输入图像描述

这是我的代码:

<div class="container-2">
      <div class="item-2">
        ...
      </div>
      <div class="item-2 p2-2">
        ...
      </div>
      <div class="item-2">
        ...
      </div>
      <div class="item-2 pp2">
        ...
      </div>
      <div class="item-2 pp2">
        ...
      </div>
</div>
Run Code Online (Sandbox Code Playgroud)

这是我的CSS:

.container-2 {
  max-width: 1200px;
  margin: 0 auto;

  padding: 20px 15px;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
}

.item-2 {
  padding: 0 15px;
  flex: 1 0 25%;
  margin-bottom: 40px;
}
Run Code Online (Sandbox Code Playgroud)

html css flexbox

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

更新Symfony 4中的实体?

我的问题很简单,但是我找不到很好的答案,我有一个由命令行创建的实体:

php bin /控制台make:entity

此实体是属性很少的用户(名称-电子邮件-密码)

插入字段后,我进行了迁移,因此已经使用以下命令行在数据库中创建了我的表:

php bin /控制台make:migration

PHP的斌/控制台学说:迁移:迁移

但是现在我只想将名称更改为用户名,但我不知道该怎么做。

我没有在文档中找到任何内容,因此任何帮助将不胜感激。

php entity symfony symfony4

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

如何在带有 id 的容器下方向下滚动一定数量的像素?

当一个事件被触发时,我有这样的事情:

window.location.href = "#my-elm";
Run Code Online (Sandbox Code Playgroud)

我有一个具有该 id 的 div,当事件被触发时,我的窗口当然会滚动到 div 位置,但是我在页面顶部有一个固定的标题,高度约为 150px,所以我的 div 的一部分不是可见的..

我想要做的是当我的事件被触发时我将向下滚动到锚点位置 + 150 px

我试图在我的页面上添加这个,我明白这是要观察我的哈希哈希(我的锚点改变??),这将滚动额外的 150 像素,但没有用

window.addEventListener("hashchange", function () {
    window.scrollTo(window.scrollX, window.scrollY + 150);
});
Run Code Online (Sandbox Code Playgroud)

有任何想法吗 ?

任何帮助将非常感激。

编辑 :

提供的答案适用于 Firefox、Edge、Chrome、Opera、Safari +11

对于 Safari -11 这不起作用,它仅适用于最新版本,这很糟糕,您必须实施其他解决方案来修复 Safari BUG

html javascript anchor

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

标签 统计

javascript ×3

html ×2

php ×2

anchor ×1

arrays ×1

class ×1

css ×1

entity ×1

flexbox ×1

laravel ×1

reactjs ×1

sass ×1

symfony ×1

symfony4 ×1