小编J S*_*olt的帖子

没有硬刷新,视频自动播放不起作用

我有视频背景。它使用自动播放。这里是:

<video muted loop autoPlay >
    <source src="assets/videos/background.mp4" type="video/mp4">
</video>
Run Code Online (Sandbox Code Playgroud)

这仅适用于以下情况: 1. 硬刷新(正常加载不起作用) 2. 导航到(如果我在另一个页面上然后导航到主页)

如果您只是导航到该链接,则它不起作用。链接:https : //jackseabolt.github.io/trasher/(请勿乱用本站)

对这里发生的事情有什么想法吗?

html html5-video

10
推荐指数
2
解决办法
8580
查看次数

React中的this.state vs state

我正在开发一个新的代码库.通常,我会在React组件中设置这样的状态:

class App extends React.Component {
    constructor() {
        super();
        this.state={
            foo: 'bar'
        }
     }
    ....
Run Code Online (Sandbox Code Playgroud)

在这个新的代码库中,我看到了很多这样的:

class App extends React.Component {
    state={
        foo: 'bar'
     }
    ....
Run Code Online (Sandbox Code Playgroud)

这样做是否有优势?他们似乎只在国家不需要改变时才这样做.我一直认为状态是React处理的东西.这是一件好事吗?

javascript state reactjs react-props

9
推荐指数
2
解决办法
9469
查看次数

道具更新,componentDidUpdate 没有触发

是否存在 componentDidUpdate 不会触发的情况,即使在 React 中更新了 props?

reactjs react-lifecycle react-props

7
推荐指数
2
解决办法
7467
查看次数

有没有办法告诉 *WHERE* 在 React/Redux 文件结构中调用了一个动作?

有没有办法告诉WHERE动作被称为反应,和/终极版文件结构中?我正在寻找一个我可以看到被调用的动作。我只是不知道该操作在文件系统中的哪个位置被分派。有没有办法确定使用 Redux 工具?我觉得我现在正在追逐一只兔子。

帮助!谢谢!

reactjs redux

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

github 页面显示自述文件,而不是index.js

我有一个基本的 React 应用程序。没有后端。我想在 github 页面上设置它。我看了这篇文章两次。https://medium.freecodecamp.org/surge-vs-github-pages-deploying-a-create-react-app-project-c0ecbf317089

这两次,Github Pages 都会显示 README.md 文件,而不是我的公共文件夹中的 index.html 文件。这是应用程序的文件目录的图像。有什么想法吗?

在此输入图像描述 如果重要的话,这是我在 package.json 中的内容:

{
  "name": "react-blog",
  "version": "0.1.0",
  "private": true,
  "homepage": "https://jackseabolt.github.io/react-blog/",
  "dependencies": {
    "react": "^16.0.0",
    "react-dom": "^16.0.0",
    "react-scripts": "1.0.14"
  },
  "scripts": {
    "start": "react-scripts start",
    "build": "react-scripts build",
    "test": "react-scripts test --env=jsdom",
    "eject": "react-scripts eject",
    "predeploy": "npm run build",
    "deploy" : "npm run build&&gh-pages -d build"
  },
  "devDependencies": {
    "gh-pages": "^1.0.0"
  }
}
Run Code Online (Sandbox Code Playgroud)

github-pages reactjs

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

反应部署错误 = 断言 `args[1]-&gt;IsString()'

我正在尝试部署 React 应用程序。它工作正常,所有测试都通过。但它被困在 CI 中。

这是错误:

Deploying application
node[5878]: ../src/node_contextify.cc:628:static void node::contextify::ContextifyScript::New(const v8::FunctionCallbackInfo<v8::Value>&): Assertion `args[1]->IsString()' failed.
 1: node::Abort() [node]
 2: 0x876c55 [node]
 3: node::contextify::ContextifyScript::New(v8::FunctionCallbackInfo<v8::Value> const&) [node]
 4: v8::internal::FunctionCallbackArguments::Call(v8::internal::CallHandlerInfo*) [node]
 5: 0xacd2df [node]
 6: v8::internal::Builtin_HandleApiCall(int, v8::internal::Object**, v8::internal::Isolate*) [node]
 7: 0xf05d4b8427d
Script failed with status 
failed to deploy
Run Code Online (Sandbox Code Playgroud)

我认为这与 Node 版本有关……但我不太确定。帮助!

这似乎是在同一个问题上,但说实话,我并没有从中得到任何答案:https : //github.com/nodejs/node/issues/20285

node.js reactjs

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

React/Redux - 将 this.props.history 传递给 thunk 是一种反模式吗?

我在一个简单的反应应用程序中有一个表单。当表单提交时,它会触发一个 thunk。

handleSubmit(e) {
    e.preventDefault(); 
    this.props.dispatch(loginUser({
        username: this.state.username, 
        password: this.state.password, 
        history: this.props.history
    }));
}
Run Code Online (Sandbox Code Playgroud)

如您所见,我将 react-router-dom 的历史传递给 thunk。这是thunk:

export const loginUser = input => dispatch => {
    return fetch('xxxxxxxxxx', {
        method: 'POST', 
        body: JSON.stringify({
            username: input.username, 
            password: input.password
        }), 
        headers: {
            'Content-Type': 'application/json'
        }
    })
    .then(res => {
        if(!res.ok) {
            return Promise.reject(res.statusText)
        }
        return res.json(); 
    })
    .then(token => {
        localStorage.setItem('token', token.authToken); 
        input.history.push('/'); 
    })
    .catch(err => console.error(`error: ${err}`)); 
}
Run Code Online (Sandbox Code Playgroud)

如您所见,如果获取成功,我将推送到历史记录。

这是一种反模式吗?或者这可以。它有效*但我想知道它是否超级奇怪/不推荐

reactjs react-router-dom

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

Jest 测试格式 -- __tests__ vs *.test.js

我正在一个反应​​代码库中工作,我们在其中标记了测试文件

__tests__
Run Code Online (Sandbox Code Playgroud)

里面的文件是这样的

文件名.js

以前当我使用 jest/enzyme 时,我的测试文件格式如下

文件名.test.js

我假设当你把一个文件放在一个带有标题的文件夹中时

__tests__ 
Run Code Online (Sandbox Code Playgroud)

你可以离开 .test 部分吗?我似乎无法找到有关主题的可靠答案。有没有人对格式化功能有一些了解?

reactjs jestjs enzyme

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

视频自动播放不起作用-尝试查找修复

我在React中有一个视频背景。我要它自动播放。自动播放不起作用。

我试过了:

  1. 自动播放
  2. 自动播放
  3. autoPlay =“自动播放”

我觉得特别奇怪的是,它偶尔会起作用。但随后它将停止。

这是现在的代码。

<video loop autoPlay>
       <source src={require('../../videos/background.mp4')} type="video/mp4" />
</video>
Run Code Online (Sandbox Code Playgroud)

这是组件的整个部分。我正在使用过渡,但是截至上周,它并未对其产生影响。

<div className="video-background">
    <Transition in={true} timeout={1000} appear={true}>
        {(state) => (
          <div id="banner" className="video-foreground" style={{ 
                            ...transitionStyles[state]
                        }}>
                        <video loop autoPlay>
                            <source src={require('../../videos/background.mp4')} type="video/mp4" />
                        </video>
          </div>
        )}
     </Transition>
  </div>
Run Code Online (Sandbox Code Playgroud)

video reactjs

4
推荐指数
5
解决办法
4921
查看次数

基本理解 - React 应用程序中公共目录的位置

我正在使用 webpack 构建一个 React 应用程序。我很好奇将我的“公共”文件夹放在哪里。我知道在 create-react-apps 中,公共文件夹位于“src”文件夹之外。

我不确定我是否清楚为什么您希望将公共资产放在源文件夹之外。index.html 不是 src 的一部分吗?这不是你的代码的关键部分吗?为什么要将公用文件夹单独放在外面?

我正在尝试找到有关该主题的好读物,但文件夹结构似乎非常主观。如果有人能解释这一点,我将不胜感激。我想牢固地理解为什么 public 文件夹位于 create-react-app 中的 src 文件夹之外。

reactjs

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