首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Hapijs-react-views设置

Hapijs-react-views设置
EN

Stack Overflow用户
提问于 2016-05-30 18:02:25
回答 2查看 744关注 0票数 1

我发现遵循hapijs-react-views package setup (npm hapi-js-react-views)指南有一些困难。

我可以运行服务器,但是我只在localhost上得到这个错误:3000

代码语言:javascript
复制
{"statusCode":500,"error":"Internal Server Error","message":"An internal server error occurred"}

我在github上的回购是:hapi-react GitHub

我的代码是:

代码语言:javascript
复制
-routes
--index.js
-views
--index.jsx
-app.js
-package.js

// routes/index.js

代码语言:javascript
复制
exports.index = function(request, reply){
  reply.view('index', { name: 'John' });
};

// views/index.js

代码语言:javascript
复制
var HelloMessage = React.createClass({
   render: function() {
      return <div>Hello {this.props.name}</div>;
   }
});

module.exports = HelloMessage;

//app.js

代码语言:javascript
复制
var hapi = require('hapi');
var vision = require('vision');
var path = require('path');
var engine = require('hapijs-react-views')();

// Create a server with a host and port
var server = new hapi.Server();
server.connection({ 
    host: 'localhost', 
    port: 3000 
});

// Register Hapi plugins
server.register(vision, function (err) {
  if(err) throw err;
});

var options = { jsx: { harmony: true } };
server.views({
    defaultExtension: 'jsx',
    engines: {
        jsx: require('hapijs-react-views')(options), // support for .jsx files
        js: require('hapijs-react-views')(options) // support for .js
    },
    relativeTo: __dirname,
    path: 'views'
});

// Add the route
server.route({
    method: 'GET',
    path: '/',
    config: {
        handler: require('./routes').index
    }
});

// Start the server
server.start((err) => {

    if (err) {
        throw err;
    }
    console.log('Server running at:', server.info.uri);
});

//package.json

代码语言:javascript
复制
  "dependencies": {
    "hapi": "^13.4.1",
    "hapijs-react-views": "^0.7.3",
    "react": "^15.1.0",
    "vision": "^4.1.0"
  }

你能帮帮我吗?提前谢谢。

EN

回答 2

Stack Overflow用户

发布于 2017-11-13 05:37:37

对于将来看到这一点的任何人,这里有一个使用vision呈现jsx的工作示例:https://github.com/hapijs/vision/tree/master/examples/jsx

票数 1
EN

Stack Overflow用户

发布于 2016-10-20 23:54:53

我也遇到了同样的问题。文档中没有说明,但是你仍然需要在视图文件中使用React。这为我解决了这个问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37522850

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档