Tag: reactjs

如何在koa的反应路由器中使用浏览器历史logging

在快递中,我们可以使用以下代码来处理请求。 当请求不是由路由器处理时,服务器端将发送index.html。 app.get('*', function (request, response){ response.sendFile(path.resolve(__dirname, '../public', 'index.html')) }) 但是在koa中,以下代码不起作用。 当请求不被koa-router处理时,它将返回404而不是index.html。 var send = require('koa-send') var serve = require('koa-static') var router = require('koa-router') var koa = require('koa') var app = koa(); app.use(serve(__dirname+'/../public')); app.use(function *(){ yield send(this, path.join(__dirname, '/../public/','index.html' )); }) app.use(router.routes()) 以下代码也不起作用 router .get('*', function* () { yield send(this, __dirname +'/../public/index.html') })

在响应组件中使用节点提取来发布数据故障

我只是试图使用node-fetch将json数据发布到快速服务器。 我知道在服务器中的职位职能,因为我已经在git bash中进行了testing。 我也在做一个反应组件。 以下是提取码: addBug(bug) { let bugsModified = this.state.bugs.slice() bug.id = this.state.bugs.length + 1 bugsModified.push(bug) fetch('http://localhost:3000/api/bugs', {method: 'POST', body: bugsModified}) .then(res => res.status === 200 && this.setState({bugs: bugsModified})) } {body:bugsModified}似乎没有向服务器发送任何东西。 这是来自服务器的代码: app.use(bodyParser.json()) app.post('/api/bugs', (req, res) => { const bug = req.body bugs.push(bug) res.json(bug) }) app.listen(3000, () => console.log('connected…')) 如果任何人都可以帮我弄清楚如何使用node-fetch发布实际的数据,那将是不胜感激。

安全地在React中embedded包含HTML的string

我正在使用库linkifyjs,它parsing注释,并返回带有文本的<a>标记的string(如果它包含链接的话)。 这很酷,但我知道使用这个唯一的方法将是dangerouslySetInnerHtml 。 我正在充实React教程中的评论系统,所以我觉得使用我当前的方法会让它容易被注入脚本。 有反正我可以将string转换为HTML元素,并安全地embedded它? 编辑:忘了详细说明,我从Facebook的评论,将返回一个普通的string,“今天访问stackoverflow.com”。

在本地使用NPM依赖关系

我是React的新手。 我希望在没有nodejs的情况下在单个页面上反应应用程序实现react-emoji-react 。 我可以做吗? 我有这样的基本反应代码 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Basic Example</title> </head> <body> <h1>Basic Example</h1> <div id="container"></div> <script src="../../build/react.js"></script> <script src="../../build/react-dom.js"></script> <script> </script> </body> </html> 我可以包括反应表情反应直接上面的脚本? 我非常混淆使用。

React Native – Packager非常慢

我有一个关于加快开发过程从本地反应的问题。 如果我通过terminal在项目根目录下运行react-native run-ios 。 一个新的terminal窗口popup,打包程序在8081端口上运行。打包程序也启动模拟程序。 包装说几秒钟后 React packager ready. [5:15:59 PM] <START> request:/index.ios.bundle?platform=ios&dev=true&minify=false [5:15:59 PM] <START> find dependencies 之后,模拟器连接到打包程序需要大约6-10分钟(在这段时间内,模拟器会抛出几次错误,导致他无法连接)。 但是,包装器初始化后,一切正常。 该应用程序已经启动,并连接到打包程序。 每当我安装新的模块(例如通过npm)或删除一些文件,我必须删除模拟器的应用程序,并且必须再次运行react-native run-ios 。 有时,当我只改变代码。 另一方面有时我可以改变代码,并可以在模拟器中通过CMD + R重新加载,一切都按预期工作。 我可以加速打包者,还是有什么我错过了重新加载? 我没有安装这么多的模块,这个项目刚刚开始(非常小)

如何在redux操作中访问NodeJs服务器上的httpOnly cookie?

所以,我开始构build一个完全通用/同构的React / Redux项目。 login状态通过JWT进行维护。 客户端通过localStorage访问JWT,但是我也想设置一个包含JWT的httpOnly cookie,以便服务器可以看到它并适当地呈现页面。 使用Redux操作设置和访问httpOnly cookie的最佳方法是什么? 使用express比较容易,但是我想将这些东西包装在redux动作中,并在服务器/客户端之间共享一个共享存储器,所以我有点不知所措。 我看到了redux-effects-cookie ,有没有人用过这个?

为React模板化引擎?

我正在构build我的第一个React应用程序,对于如何在Express中初始页面加载时传递数据,我有点困惑。 我通常使用EJS partials并通过res.render()传递数据对象。 有没有一种解决scheme,使我可以轻松地将值放入页面加载的React道具,类似于EJS的方式? 如果是这样,哪个是最好的select? 到目前为止,我刚刚从componentDidMount()发送了一个AJAX,这是我很好(我假设不理想,但它的工作),但我现在正在build立一个“文章”页面与一个variables的URL ID,我需要传入数据库查询,以便我可以接收关联的数据。

如何修复`npm install`错误与react-boilerplate?

当我从反应样板文件运行npm install ,我的第三方模块发出了一些错误,如下所示。 所有这些模块在其他节点项目中都能正常工作,而不是在反应模板中。 有谁知道如何解决这些问题? ERROR in ./~/nconf/lib/nconf.js Module not found: Error: Can't resolve 'fs' in '/Users/me/src/fullboar/probate-web/node_modules/nconf/lib' @ ./~/nconf/lib/nconf.js 8:9-22 ERROR in ./~/nconf/package.json Module parse failed: /Users/me/src/fullboar/probate-web/node_modules/nconf/package.json Unexpected token (2:9) You may need an appropriate loader to handle this file type. | { | "_args": [ | [ | { @ ./~/nconf/lib/nconf.js 21:16-42 ERROR in […]

React找不到我包含的第三方脚本

我正在尝试通过React教程 ,并遇到了一个绊脚石。 我有以下的HTML <html lang="en"> <head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1" /> <link rel="shortcut icon" href="./src/favicon.ico" /> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.97.7/css/materialize.min.css" /> <script src="https://npmcdn.com/react@15.3.1/dist/react.js"></script> <script src="https://npmcdn.com/react-dom@15.3.1/dist/react-dom.js"></script> <script src="https://npmcdn.com/babel-core@5.8.38/browser.min.js"></script> <script src="https://npmcdn.com/jquery@3.1.0/dist/jquery.min.js"></script> <script src="https://npmcdn.com/remarkable@1.6.2/dist/remarkable.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.97.7/js/materialize.min.js"></script> <script type="text/babel" src="src/index.js"></script> <title>React App</title> </head> <body> <div class="container"> <div class="row"> <div id="sidebar" class="col s3"> </div> <div id="content" class="col s9"> […]

使用react-hot-loader 3与自己的服务器

我能够设置react-hot-loader来正确地绑定我的客户端js,并将更改推送到浏览器并在那里应用(除了[react-router] You cannot change <Router routes>; it will be ignored警告)。 我使用自己的服务器与koa , koa-webpack-dev-middleware和koa-webpack-hot-middleware ,处理webpack和hot。 它也处理我的应用程序与此代码的服务器呈现 export default function *renderReact() { const history = createMemoryHistory(); const store = makeStore(history); const [redirectLocation, renderProps] = yield match.bind(null, { routes, location: this.url, history }); if (redirectLocation) { return this.redirect(redirectLocation.pathname + redirectLocation.search) } if (renderProps == null) { return this.throw(404, […]