Tag: reactjs

在iOS设备上执行本地部署停留在运行1个自定义shell脚本之一

我正在尝试在iOS设备上运行React Native应用程序。 它在模拟器上工作正常,但在设备上运行需要长达20-25分钟的时间。 我遇到了运行1个自定义shell脚本之一。 我尝试删除npm,清除守望者,重置npmcaching,更新React版本,守望者版本等,但没有任何工作。 我甚至尝试使用命令部署到设备,即使这花费了很多时间。 附上截图供参考。

Flux / Alt数据依赖,如何优雅和惯用地处理

我使用alt作为项目的stream量实现,并且在处理两个相关实体的加载存储的最佳方法时遇到了麻烦。 我使用源特性与registerAsync一起处理我的asynchronous/ api调用,并使用AltContainer将它们绑定到我的视图。 我有两个由conversationId相互关联的实体。 两者都通过api调用加载: 一旦我的工作商店加载数据,我想填补一个对话商店。 我使用源来加载作业存储: module.exports = { fetchJobs() { return { remote() { return axios.get('api/platform/jobs'); },…. 看起来像waitFor()方法的工作,但它似乎用于一个商店的内容需要转换或合并与另一个的内容。 我需要根据另一个数据的内容获取一个数据存储的内容。 一般而言,我需要: 调用第三方API并将实体列表加载到商店中。 当数据到达时,我需要使用上述每个属性来调用另一个API并将该数据加载到另一个存储中。 我天真的解决scheme是参考作业存储中的对话操作,并在数据到达时分派事件。 像这样的东西: var jobActions = require('../actions/Jobs'); var conversationActions = require('../actions/Conversations'); class JobStore { constructor() { this.bindListeners({ handlefullUpdate: actions.success });… } handlefullUpdate(jobs) { this.jobs = jobs; conversationActions.fetch.defer(jobs); } } 当然,这样做违反了商店不应该派遣事件的格言,因此我必须使用推迟在派遣中间派遣一个行动。 这对我来说是有意义的,因为它似乎在走下去,我在我的代码中重新引入各种副作用; 失去了我应该看到的“function性pipe道”的美感。 […]

ReactJS服务器端在Flask中渲染

我刚刚开始学习ReactJS,并确定它是否值得从用于Flask的AngularJS切换。 我知道ReactJS的好处之一是renderToString的工作方式来呈现和HTMLstring更快的加载时间和更好的search引擎优化。 从我读的是SEO比AngularJS可以做的好得多,尽pipe谷歌正在努力提高爬行的Javascript。 我的问题是关于SEO的好处如何与像Flask这样的框架一起工作。 说我有一个像下面的组件,只是把它呈现给我的分区。 如果我想渲染这个服务器端,我需要使用像nodejs或一些可以执行Javascript的Python库的东西? 如果我尝试做React.renderToString(…..)它不会做任何事情。 如果是这样的话,那么ReactJS的search引擎优化(SEO)的广告效益并不比AngularJS更好呢? 请帮我理解这一点,如果它有可能呈现JavaScript服务器端与Flask我怎么去实现呢? var Foo = React.createClass({ render: function() { return ( <div>Foo</div> ); } }); React.render(<Foo />, document.getElementById('foo'));

从ReactJS外部渲染组件

从这里 : “在React之外获取React组件实例的句柄的唯一方法是存储React.render的返回值。 我需要在React之外渲染一个React组件,以及我将在下面提及的原因。 在我的node.js,expressJS应用程序中,我使用了“react-router-component”和“react-async” 。 在app.js中 – 应该运行的文件, var url=require('url'); var App=require('./react/App.jsx'); var app = express(); app.get('*',function(req,res){ //}); SEE EDIT 1 BELOW var path = url.parse(req.url).pathname; ReactAsync.renderComponentToStringWithAsyncState(App({path:path}),function(err, markup) { res.send('<!DOCTYPE html>'+markup); }); }); 在App.jsx中, PostList = require('./components/PostList.jsx'); var App = React.createClass({ render: function() { return ( <html> <head lang="en"> </head> <body> <div id="main"> <Locations […]

由于Git的index.lock,WebStorm不断崩溃我的本地运行服务器

Error: EPERM: operation not permitted, lstat 'C:\ProjectDirectory\.git\index.lock' at Error (native) 我使用的是WebStorm,每次我使用npm start运行本地服务器进行testingnpm start ,无论什么时候什么也不做,有时在做了一些改动之后,它不可避免地崩溃了。 我正在使用这个React样板 ,而实际的作者回答了我提到的一个错误问题:“基于错误,它看起来像是你的编辑器或你的源代码控制系统正在locking文件。 每当我做了一些改变,我都有点累了重新启动服务器,并希望解决这个问题。 完整的错误日志

EventEmitter vs Facebook的调度员

我正在使用Flux架构。 我在网上读过,为了定义Store,我必须这样做: var AppDispatcher = require('../dispatcher/dispatcher'), //facebook's dispatcher EventEmitter = require('events').EventEmitter, assign = require('object-assign'); var MyStore = assign({}, EventEmitter.prototype, { ….. 据我所知,EventEmitter和Facebook的调度有很多共同之处。 例如,两者都可以发出(或派发)一个事件。 我的问题是为什么我需要EventEmitter和调度程序? 这不是多余的吗? 创build一个包含EventEmitter所需行为的调度程序是不是更好?

Typescript + webpack(带有热重载)+ NodeJS

面对问题 – build立基于TypeScript的项目原型。 它包含客户端脚本和服务器部分(带有ExpressJ的NodeJs)。 我想有一个打包机的webpack,并使用热重新加载function,以查看飞行中的变化。 最初,我使用了react-transform-b​​oilerplate-ts ,但那里的问题 – 开发服务器的入口点是js文件。 我想这应该是ts,因为我想包括我的快速configuration等。 那么,有没有人有好的样板(遵循项目结构的最佳实践)来创build包含以下内容的项目: 客户端(React)和服务器(打字稿) 后端使用NodeJs和ExpressJs(打字稿) 客户端和服务器支持热重新加载(因为我明白最好的select – 是重新加载的webpack选项,而不是吞咽任务,运行观看)。 或者,也许你可以给我很好的build议,如何以适当的方式configuration这种东西。 非常感谢

如何在React中导出用于服务器端渲染的组件

所有: 我对React非常陌生,现在我正在尝试如何做服务器端渲染,我使用Express.js作为我的服务器,所以代码如下所示: //server.js var express = require("express"); var ReactDOMServer = require("react-dom/server"); var MyCom = require("./components"); var domstring = ReactDOMServer.renderToString(MyCom); var app = express(); app.get("/", function(req, res){ res.json({ name: "new com", dom: domstring }); }); 和 // components.js var React = require("react"); var MyCom = React.createClass({ render: function(){ return (<h1>Hello, server side react</h1>); } }); module.exports […]

如何在React / redux中进行服务器端渲染?

我是新的反应/ redux我有点困惑与服务器端反应在/ reax,在互联网上看到一些例子,但当我尝试与外部服务器模拟API,服务器端渲染不起作用。 cat.js import React from 'react'; import {render} from 'react-dom'; import {connect} from 'react-redux'; import * as mockApi from '../Actions/mockActions'; class Cat extends React.Component{ componentWillMount(){ this.props.getMockApi(); } render(){ return( <div> Hello Dude {this.props.mock.data.map((data,i) => { return <li key={i}>{data.email}</li> })} </div> ) } } const mapStateToProps = (state) => { return { mock:state.mock } […]

如何访问服务器端React中的JSX组件的DOM事件处理程序

我正在使用React构build一个简单的静态视图引擎,目标是呈现静态HTML标记,并生成一个由组件DOM事件(onClick等)填充的js文件。 我做的第一部分的方式是要求一个指定的JSX文件,例如,看起来像这样: import React from 'React'; export default class Test extends React.Component { clicked() { alert('Clicked the header!'); } render() { return ( <html> <head> <title>{this.props.title}</title> </head> <body> <h1 onClick={this.clicked}>click me!!!</h1> </body> </html> ); } } 然后,我通过一个NodeJS后端渲染JSX文件,如下所示: let view = require('path-to-the-jsx-file'); view = view.default || view; const ViewElement = React.createFactory(view); let output = ReactDOMServer.renderToStaticMarkup(ViewElement(props)); 它适用于静态HTML。 […]