2016-10-21 4 views
1

Я работаю над проектом, в котором я получаю в данной ситуации:React: показать объект как рабочий формат JS?

myjson: 
{ 
    completeName: "my name is {this.state.myName+ " "+this.state.surname}" 
} 

component.js

var Component = React.createClass({ 
    getInitialState: function() { 
     return({ 
      myName: "AKHA", 
      surname: "HUND" 
     }) 
    }, 
    render: function() { 
     return (
      <div>{myData.completeName}</div> 
     ) 
    } 
}) 

но я получаю выход как:

my name is {this.state.myName+ " "+this.state.surname} 

вместо от:

my name is AKHA HUND*** 

, пожалуйста, помогите мне.

Примечание: использование ES5.

Благодаря

ответ

2

Что вы храните в вашем .json является строка, а не выражение, оно не вычисляется в любом случае, вы должны изменить шаблон в коде JS.

Использование ES5 вы могли бы сделать что-то вроде этого:

.json

{ 
    completeName: "my name is %myName %surname" 
} 

component.js

var Component= React.createClass({ 
    getInitialState: function(){ 
     return({ 
      myName: "AKHA", 
      surname: "HUND" 
     }) 
    }, 
    render: function(){ 
     const result = myData.completeName 
      .replace("%myName", this.state.myName) 
      .replace("%surname", this.state.surname); 

     return (
      <div>{ result }</div> 
     ) 
    } 
}) 

 Смежные вопросы

  • Нет связанных вопросов^_^