Articles of reactjs

反应回stream – 发电机使用Yeoman

我正在尝试使用yeoman生成器生成反应回stream项目,但是我收到以下错误。 我为此使用yeoman发生器,并通过npm安装了发生器 – 反应回stream。 pdc1-4s6zyr1:expProj administrator$ yo ? 'Allo administrator! What would you like to do? (Use arrow keys) Run a generator ❯ Angular Webapp React Reflux Karma Yeogurt Mocha (Move up and down to reveal more choices)/usr/local/lib/node_modules/yo/node_modules/configstore/index.js:86 ? 'Allo administrator! What would you like to do? React Reflux Make sure you are in the […]

react-typeahead – 不变的违规:addComponentAsRefTo(…)问题

节点v0.12.2 React v0.13.2 Npm v2.7.4 使用标准typeaheadinput会导致以下错误: 未捕获错误:不变违例:addComponentAsRefTo(…):只有ReactOwner可以有参考。 这通常意味着你正在尝试向没有所有者的组件添加ref(也就是说,不是在另一个组件的render方法中创build的)。 试着将这个组件放在一个新的顶层组件中,这个组件将会容纳参考。 这就是我如何实现这一点… Index.jsx有: 'use strict' var React = require('react'); var ReactTypeahead = require('react-typeahead').Typeahead var QuickSearch = React.createClass({ render: function () { return( <ReactTypeahead options={["spam", "foodbar"]}/> ); } }); var Topbar = React.createClass({ render: function() { return ( <QuickSearch /> ); } }); module.exports = Topbar; 然后在我的App.jsx中我有: 'use […]

如何使用npm封装javascript里面的反应组件

我正在尝试使用rc-calender进行反应。 https://www.npmjs.com/package/rc-calendar 我需要使用这个包的CSS。 我正在尝试使用这个如下。 require('rc-calendar/assets/bootstrap.css'); 但它是给我的 ParseError :意外的令牌。 我得到所有其他的CSS(从其他npm包)类似的错误。 任何想法如何使用这些CSS。

同构的应用程序没有拆分视图

在过去的几年中,我一直在MEAN栈上构build单页应用程序,并且非常喜欢它。 但是,默认情况下缺乏SEO,有时候一些性能问题对我来说是一个真正的问题。 所以我开始研究构build同构的应用程序。 我检查了这些教程: http://nerds.airbnb.com/isomorphic-javascript-future-web-apps/ http://engineering.devmag.io/post/1/creating-an-isomorphic-blogging-app-using-react-and-flux 用我目前的SPA构build,我有一个主index.html文件(包含body&head,header,footer,nav和脚本来加载),然后我有一个使用Angular的ng-view加载ng-view 。 这是非常容易维护前端的HTML作为一个页面的所有代码将在一个单一的视图文件。 然而,我看过的同构构build(使用React和Flux)的教程将html分割成模块,每个模块都有自己的文件并混合到javascript中。 我觉得这很难看,很难维护。 查看输出文件中的代码,很难看到结果页面的样子。 它看起来不是很有语义,似乎回到了一些老式的在PHP应用程序中构build模块化html的方法,而这些方法有些人曾经做过。 有没有办法维护我们从Angular SPA中获得的简单的路由和html视图结构,同时能够以同构的方式在服务器上呈现? 注意我不是简单地使用PhantomJS之类的东西来渲染服务器上的内容。 我仍然想要完整的同构体验,首先打到页面提供完全呈现的内容,然后后续交互在客户端执行JavaScript。

优点和缺点只使用快递+反应,而不是expression+反应+玉/ ejs

使用反应作为引擎https://github.com/reactjs/express-react-views vs 调用renderToString,然后用其他引擎重新启动https://strongloop.com/strongblog/node-js-react-isomorphic-javascript-why-it-matters/ 可能是其他像res.send + renderToString

momentjs – fromNow()方法在通用(同构)的js应用程序中

我有一个应用程序是用node.js和react.js构build的,并且是通用的(或者是之前调用的“同构”),并且使用REST API来获取数据。 在某些组件的render方法中,我以2 days ago或few seconds ago格式显示date,在这种情况下,moment.js完美地工作。 我正在谈论它的方法fromNow() ,例如: render() { const { date } = this.props; const formattedDate = moment(date).fromNow(); return ( <div>{formattedDate}</div> ); } 但是这是问题: Warning: React attempted to reuse markup in a container but the checksum was invalid. This generally means that you are using server rendering and the markup generated on […]

与JSPM重用同构/通用React组件

我正在尝试使用ExpressJs / ReactJs / JSPM堆栈来configuration同构/通用设置。 我目前的问题是,JSPM要求我将JSX模块添加到.jsx! 后缀为了传输它们,所以我的组件依赖期望文件名是从服务器模板到浏览器组件的区别。 有没有人遇到过这个问题并解决了它?

两个通配符路由在反应路由中意味着什么?

我试图了解kirasoft的react-starter-kit,注意到他们的路由有两个“*”通配符路由条目。 为什么有两个,优先顺序是什么? 第一条路线似乎设置了整体的应用程序,然后第二个似乎引发了默认的内容处理程序…都被解雇了,如果是的话,这两者之间的逻辑是什么,他们都只是顺序触发,并得到追加不知何故在一起的答复? import React from 'react'; import Router from 'react-routing/src/Router'; import http from './core/HttpClient'; import App from './components/App'; import ContentPage from './components/ContentPage'; import ContactPage from './components/ContactPage'; import LoginPage from './components/LoginPage'; import RegisterPage from './components/RegisterPage'; import NotFoundPage from './components/NotFoundPage'; import ErrorPage from './components/ErrorPage'; const router = new Router(on => { on('*', async (state, next) => […]

React – 服务器端组件呈现

我试图renderToString一个非常简单的React组件在服务器上: /** @jsx dom */ var React = require("react"); var Title = React.createClass({ render: function(){ return(<h1>Hello World</h1>) } }); module.exports = React.createFactory(Title); 当我调用ReactDOMServer.renderToString(组件)时,我得到Error: Invariant Violation: renderToString(): You must pass a valid ReactElement. 如果我做React.createElement(标题),我得到 return(dom.h1(null, "Hello World")) ^ ReferenceError: dom is not defined 路线文件: var express = require('express'), router = express.Router(), React = require("react") ReactDOMServer = […]

从Express响应(渲染)发送道具给ReactJs

我有一个简单的应用程序与node.js , 快递 , 护照和react-js 。 我有一个包含client.js的index.html ,它是react-js的一个简单呈现: var React = require('react'); var React = require('react-dom'); var Client = require('./Client.jsx'); ReactDOM.render( React.createElement(Client, null), document.getElementById('main') ); Client是真正的应用程序。 在服务器端( routes.js )我有这个:app.get('/ login',function(req,res){res.render('login');}); app.get('/auth/google', passport.authenticate('google', { scope: ['profile', 'email'] }),function(req, res){}); app.get('/auth/google/callback',passport.authenticate('google', { failureRedirect: '/login' }), function(req, res) { res.redirect('/'); }); app.get('/', ensureAuthenticated ,function(req, res){ req.session.id = req.user._id; […]