javascript - Invariant Violation: Invalid tag: 'use strict'; -
while transpiling following index.js file, error:
invariant violation: invalid tag: 'use strict';
i using babel-core, react, react-dom.
my index.js file:
import react 'react' import { render } 'react-dom' import { router, route, browserhistory, indexroute } 'react-router' import app './components/app' import home './components/home' import funddetail './components/funddetail' render(( <router history={browserhistory}> <route path="/" component={app}> <indexroute component={home}/> <route path="/fund/:id" component={funddetail}/> </route> </router> ), document.getelementbyid('content')) my .babaelrc file:
{ "presets": ["es2015"], "plugins": ["transform-strict-mode", "transform-react-jsx"] } server code:
var react = require("react"); var reactdom = require("react-dom/server"); var babel = require('babel-core'); var component; babel.transformfile("./assets/js/index.js", {}, function (err, result) { if(err) { sails.log.error(err) } else { component = react.createfactory(result.code); var comp = component(); res.send(reactdom.rendertostring(comp)); } }); what should do?
i'm guessing transform-react-jsx isn't thing need, why not use preset? can see there more transform:
npm babel-preset-react --save and add .babelrc:
"presets": ["es2015", "react"] and remove transform.
also try babel-core/register on server.
i'm not sure you're doing babel.transformfile? like:
server.get('*', require('./router')); where file exporting function uses react-router's match. haven't seen approach before of requiring index.js file (which isn't exporting anything) doing react render?
Comments
Post a Comment