Articles of reactjs

呈现大量复杂的HTML

我有一个反应组件,我必须呈现像600儿童组件(和数量将增加缓慢)。 这些内部组件都非常大而且复杂(它们甚至有一个svg)。 另外,我必须能够过滤它们。 我到处都用钥匙,确保不浪费重新渲染,但无论如何非常沉重。 我想知道哪个是最好的方法来做到这一点。 我不能不幸分页。 任何帮助,将不胜感激。

无法安装create-react-app

我正在关注https://hackernoon.com/simple-react-development-in-2017-113bd563691f 我是React生态系统的新手,我刚刚安装了Yarn ➜ WebstormProjects yarn –version 0.23.2 然后我像文档中所提到的那样安装了created-react-app ➜ WebstormProjects yarn global add create-react-app yarn global v0.23.2 warning No license field [1/4] 🔍 Resolving packages… [2/4] 🚚 Fetching packages… [3/4] 🔗 Linking dependencies… [4/4] 📃 Building fresh packages… success Installed "create-react-app@1.3.0" with binaries: – create-react-app warning No license field ✨ Done in 0.82s. 然后,我尝试创build应用程序 ➜ […]

不变式违例:元素types无效:期望一个string(用于内置组件)或类/函数。 反应路由器v4

我对reactjs比较陌生,正在使用react-router v4testing基本的服务器端渲染,但是我无法越过这个错误,从几个小时以来一直在尝试。 我已经尝试了我在谷歌find的每一个解决scheme,但他们似乎没有工作。 这里是server.js代码: import Express from 'express'; import React from 'react'; import { renderToString } from 'react-dom/server'; import { StaticRouter } from 'react-router' import MyRoutes from './routes/routes.js'; … app.get('*', (req, res) => { let markup = `<!DOCTYPE html> <html lang="en"> <body> ${renderToString(<StaticRouter location={req.url} context={{}}><MyRoutes/></StaticRouter>)} </body> </html>`; res.write(markup); res.end(); }); 问题似乎与以下代码: ./routes/routes.js代码: import React from […]

运行react-scriptstesting时出现“错误:产生git ENOENT”

我有一个使用create-react-app的项目。 当我第一次创build项目时,testing运行良好。 我决定运行一段时间后没有运行testing(我还没有写任何生成的testing类是我所有),现在我得到以下错误: Determining test suites to run…Error: spawn git ENOENT at Process.ChildProcess._handle.onexit (internal/child_process.js:178:32) at onErrorNT (internal/child_process.js:344:16) at nextTickCallbackWith2Args (node.js:442:9) at process._tickCallback (node.js:356:17) Git肯定是在路上,我可以从命令行运行git –version ,并按预期输出。 如果我在cygwin或windows命令行中运行,会得到相同的错误。 我的package.json如下所示: { "name": "my-app", "version": "0.1.0", "private": true, "dependencies": { "immutable": "^3.8.1", "react": "^15.5.4", "react-dom": "^15.5.4" }, "devDependencies": { "react-scripts": "0.9.5" }, "scripts": { "start": "react-scripts start", "build": […]

npm只安装节点服务器?

这可能是一个非常绿色的问题,但我一直在使用webpackdevise一个反应的应用程序,并使用npm install安装各种软件包。 每个软件包都用于某些前端部件,比如制表符或者D3等等。我的问题是,这是否意味着我必须将服务器作为节点服务器? 它可能是一个瓶服务器,或其他一些随机types,仍然使用这些节点包? 我知道这似乎是一个愚蠢的问题,因为我使用节点,他们被称为节点模块,但他们都是前端而不是后端,所以我不知道他们是否需要一个节点返回结束与否。

Meteor:sortablejs方法不被调用

我有一个组件,当简化看起来像这样: import Sortable from 'react-sortablejs'; class App extends Component { constructor(props) { super(props); } updateItemOrder() { let items = this.props.items; items.forEach((item, index) => { console.log(item._id); console.log(index); updateItem.call({ _id: item._id, update: { priority: index } }); }); }; render() { <Sortable tag='ul' className='item-list list-group' onChange={ this.updateItemOrder() }> { this.renderItems() } </Sortable> } } 我的控制台在页面加载时列出了item._id和index ,但是当我将这些项目拖放到我的可sorting列表中时没有任何反应。 更改为<ReactSortable>组件也无济于事(按照文档 […]

你怎么能检测到你的React应用程序已经呈现在服务器上?

我想确定一个组件是否构build了我的React应用程序来与校验和进行比较或正常渲染。 有没有办法让一个组件在初始“校验和”渲染上的行为稍有不同? 具体来说,我有一个使用canvas的组件,这是服务器无法做到的。 所以在服务器上,我希望它只是呈现一个空的元素,然后在客户端上,匹配校验和,随后更新。 或者,在这样的情况下,让React取代服务器使用新元素渲染的元素会更好吗?

如何将一个包含样式标签的string作为原始文件添加到文件头中?

我asynchronous呈现在rapscallion模板serverside节点中。 在渲染主体的时候,我需要在文档头中插入一个string(包含换行符): // this is what I have serverside var stylestring = `<style type="text/css" data-style="some-id-that needs to be preserved"> .lfwARz { margin-bottom: 0; margin-top: 0; } </style>` 因为那时我已经把<head>发送给客户端了,所以我需要插入一个脚本来设置这些样式到客户端。 但是我很难让这个工作。 这种方法工作: // gets run clientside <script> var style = document.createElement('style') style.type = 'text/css' style.innerHTML = '${() => sheet.getStyleTags().replace(/(\r\n|\n|\r)/gm, '').replace(/<\/?style.*?>/g, '')}' document.head.appendChild(style) </script> 但它导致数据属性的丢失(我需要保留,所以样式不会在客户端上重新渲染)。

React Native:无法连接到开发服务器

我有一个非常简单的React Native项目,我正在努力工作。 这是一个iOS项目,简单地将RCTRootView添加到UIViewController。 当我从Xcode运行应用程序时,出现错误的红色屏幕: Could not connect to development server. Ensure the following: – Node server is running and available on the same network – run 'npm start' from react-native root – Node server URL is correctly set in AppDelegate AppDelegate.h @property (strong, nonatomic) RCTRootView *rootView; application: didFinishLaunchingWithOptions: AppDelegate.m application: didFinishLaunchingWithOptions: NSURL *jsCodeLocation = [NSURL […]

用socket.io和webpack构build一个反应应用程序是行不通的

本周我正在阅读有关这个​​问题的所有内容,但networking上的任何解决scheme都不适用于我正在开发的项目。 我正在使用反应和相关技术在webapp中工作。 为了使编译过程中使用新版本的webpack(v2.3.2)。 我有我的服务器webpackconfiguration与我的客户端webpackconfiguration分开。 所有的工作都很好,直到我添加了socket.io来创build一些实时组件。 应用networking中的所有解决scheme我仍然在运行我的捆绑脚本时收到以下警告: WARNING in ./~/express/lib/view.js 80:29-41 Critical dependency: the request of a dependency is an expression WARNING in ./~/socket.io/lib/index.js 109:11-32 Critical dependency: the request of a dependency is an expression WARNING in ./~/engine.io/lib/server.js 115:15-37 Critical dependency: the request of a dependency is an expression 当我尝试启动我的项目时,出现以下错误: return /*require.resolve*/(!(function webpackMissingModule() { var e […]