Articles of reactjs

如何从Reactjs项目中执行系统脚本?

我有一个React项目,当用户点击一个button时,我想执行一个服务器端bash脚本。 然后该脚本将运行并返回一些输出以显示回用户。 我知道NodeJS有一种方法来产生或执行一个特定的命令,但我不知道如何利用我的React项目中的这些function。 有谁知道如何做到这一点?

在创build对象时,数组键不会被内插

我将JSON转换为数组并返回到单独的JSON对象(它与React和子对象有关)。 下面的数组工作正常,因为把数组元素放入variables中。 但是,当我试图从他们的obj,关键不起作用,它只是作为“myKey” – 为什么? 将数组元素转换为对象的正确方法是什么? var express = require('express'); var app = express(); var bodyParser = require('body-parser'); var methodOverride = require('method-override'); var fetch = require('isomorphic-fetch'); app.use(bodyParser.json()); app.use(methodOverride()); var promise = new Promise(function(resolve, reject) { fetch('https://jsonplaceholder.typicode.com/posts/1').then( function(response){ return response.json(); } ).then(function(jsonData){ result = [] for(var i in jsonData) { result.push([i, jsonData [i]]); } var myKey […]

反应应用程序的状态是不是最新的,我在我的数据库中?

我正在制作一个小杂货清单应用程序。 每当我提交一个表单,我执行一个axios请求将项目添加到数据库,并更新我的“项目”状态,以包含新的杂货项目。 问题是,除非我刷新页面,我的状态仍然显示一个空的“项目”数组。 “items”数组的初始状态是从数据库中提取出来的,通过使用componentDidMount并在那里设置“items”的状态。 另外,在我的状态,我有当前的用户也从数据库中拉出。 如果在添加我的第一个项目之后尝试loginthis.state.currentUser.shoppingList,它将显示一个空数组,即使我可以看到服务器端日志,指出该数组不是空的。 这是我的代码: **App Component** import React from 'react'; import ListForm from './ListForm'; import * as helpers from '../helpers'; class App extends React.Component{ state = { currentUser: {}, items: [] } componentDidMount() { console.log('Hello!'); helpers.fetchUser() .then(data => { this.setState({ currentUser: data, items: data.shoppingList }, () => { console.log(this.state) }); }); } […]

自动脚本转换js到jsx在反应的应用程序

我是REACT的新手,所以如果我混淆了术语,请耐心等待。 下面的html文件启动一个反应的应用程序: 的index.html <html> <head> <script data-require="react@*" data-semver="15.5.0" src="https://cdnjs.cloudflare.com/ajax/libs/react/15.5.0/react.min.js"></script> <script data-require="react@*" data-semver="15.5.0" src="https://cdnjs.cloudflare.com/ajax/libs/react/15.5.0/react-dom.min.js"></script> <script data-require="redux@*" data-semver="3.2.1" src="https://cdnjs.cloudflare.com/ajax/libs/redux/3.2.1/redux.js"></script> <script data-require="react-redux@*" data-semver="4.4.5" src="https://cdnjs.cloudflare.com/ajax/libs/react-redux/4.4.5/react-redux.js"></script> <title>Hello world</title> </head> <body> <h1>Share a sport activity</h1> <div id="appMount"></div> <script src="app.js"></script> </body> </html> 在服务器上的index.html文件夹中,有一个app.jsx文件,但没有app.js文件(参见脚本标签的src属性)。 app.jsx class Communicator extends React.Component { constructor(props) { super(props); this.state = {message: this.props.message}; } resetComm() { this.setState({message: ''}); } […]

使用React导出JavaScript函数

我正在尝试做一个网站的Facebooklogin。 我发布的是一个带有渲染函数的js文件的一段,它返回这个html代码: var hellojs = require('./hello.js'); // See what hello.js does: http://adodson.com/hello.js/demos/profile.html#helloapi-me- //It basically prompts the facebook window to sign up. var React = require('react'); var provide rs = { facebook : 'XXXXXXXXXXXXXXX', twitter : 'XXXXXXXXXXXXXXX',//I have registered my app, XX.. is just for privacy. google : 'XXXXXXXXXXXXXXX' }; //LISTENER FOR LOGIN hellojs.hello.on('auth.login',function(auth){ hellojs.hello(auth.network).api('/me').then(function(response){ var […]

Webpack-dev-server和isomorphic react-node应用程序

我设法正确使用webpack开发服务器和一个节点服务器(express),使用webpackconfiguration中的插件部分。 这一切工作正常,但现在我试图去同构,并在快速应用程序内使用客户端组件。 到目前为止唯一的问题,我遇到的是,没有webpack“parsing”我的服务器端代码,我得到的情况下,我需要的组件,但path没有解决 IE 在组件内部 'use strict'; import React from 'react'; import { RouteHandler, Link } from 'react-router'; import Header from 'components/header/main'; // <– This line causes the error because webpack is not working when parsing this JSX server-side export default React.createClass({ displayName: 'App', render() { return ( // … More code 我应该以另一种方式configurationwebpack,还是必须将所有导入更改为有效的服务器端? 代码是这里万一你想看到实际的状态https://github.com/vshjxyz/es6-react-flux-node-quickstart

SSL:Heroku,Nodejs,Socketio,ReactJS

我部署到Heroku的应用程序戳 ,一切都很好,应该是实时的,但如果你看到控制台不工作,我得到这个错误 Mixed Content: The page at 'https://poke-chat.herokuapp.com/' was loaded over HTTPS, but requested an insecure XMLHttpRequest endpoint 'http://localhost:3000/socket.io/?EIO=3&transport=polling&t=1441366303148-19'. This request has been blocked; the content must be served over HTTPS 我不知道为什么:c 这是我的index.js import express from 'express'; import http from 'http'; import engine from 'socket.io'; import dbapi from './db-api'; const port = process.env.PORT || 3000; […]

在React(ES6)中访问护照的req.user? API调用返回req.user未定义

我正在使用使用Passport进行身份validation的React Starter Kit制作应用程序。 我现在正在尝试在前端访问req.user对象的阶段,但是我无法将req.user对象传递到React / ES6环境。 我试图把这个东西作为一个prop和context来使用,但都无济于事。 此时,我决定创build一个API端点,在那里我可以将req.user的值作为JSON返回,但req.user被返回为undefined ,尽pipe在get('*')下工作正常。 这是我所做的GET调用,即返回undefined : server.get('/user', (req, res) => { console.info('user: ', req.user); }); 而 server.get('*', async (req, res, next) => { console.info('*: ', req.user); // … the rest of the React Starter Kit rendering code 确实会返回req.user的对象,这让我感到困惑。 护照会限制在某些网站吗? 中间件: server.use(express.static(path.join(__dirname, 'public'))); server.use(cookieParser()); server.use(session({ secret: 'keyboard cat', cookie: { httpOnly: […]

获取“TypeError:调用`npm start`时无法读取未定义的属性”文件名“

我正在关注这个相当冗长但非常丰富的post,关于使用以下技术堆栈设置Web应用程序: es 6 节点+expression 车把 反应+反应路由器 webpack + babel 示例代码可以在这里find。 我一直在跟着,一切都很顺利,我理解了最重要的概念。 但是,当我尝试运行它时(使用git clone下载之后)出现错误,如下所示: $ npm install $ npm start 生成的输出包括错误是: > react-ssr-example@0.0.1 start /Users/nburk/Developer/node/templates/react-universal-web-apps-simple > npm-run-all –parallel gulp server > react-ssr-example@0.0.1 server /Users/nburk/Developer/node/templates/react-universal-web-apps-simple > node-dev app/babel-server.js > react-ssr-example@0.0.1 gulp /Users/nburk/Developer/node/templates/react-universal-web-apps-simple > gulp [19:10:39] Using gulpfile ~/Developer/node/templates/react-universal-web-apps-simple/gulpfile.js [19:10:39] Starting 'build:scss'… [19:10:39] Starting 'build:watch:app'… TypeError: Cannot read […]

反应function没有被调用

我正在使用节点js呈现一个反应类,因为… var express = require('express'); var router = express.Router(); var React = require('react'); var reactDom = require('react-dom/server'); var App = React.createFactory(require('../components/index')); router.get('/', function(req,res) { var reactHtml = reactDom.renderToString(App({})); res.render('../../tutorHub/views/index.jade', {reactOutput: reactHtml}); }); module.exports = router; 页面呈现正常,但没有我添加的函数被调用。 例如,在我的App类… class App extends React.Component { constructor(props) { super(props); } getClass() { return "a_class"; } render() { return ( […]