在javascript

时间:2016-09-02 01:40:15

标签: javascript class reactjs

所以我正在做一些需要我接受一个类(在单独的文件中声明)的东西,在这种情况下它是一个反应组件,并将其转换为字符串,通过正则表达式删除某些东西使react组件变小,然后将其转换回类并将该新对象设置为状态。 如果你不熟悉反应那么简单来说我需要去上课 - >字符串 - >类对象

这是我到目前为止所返回的内容并且看起来像是同一个对象,但是当我尝试使用它并设置状态时,它会丢失上下文或者其他内容并且var NAMESPACE出现为未定义。

如果我尝试直接从newState参数开始并将其设置为函数中的状态" _this.setState()"一切都按预期工作。

感谢阅读,希望你能帮助我。仅供参考我在JS方面经验不足,可能缺少一个重要的概念。

  setStateInChunks(newState, _this) {
     var obj = {};
     obj = newState.toString();
     var newObj = eval(obj);
    _this.setState({view: newObj});
 }

这是设置为状态

的示例类对象
const React = api.React;
const ReactBootstrap = api.ReactBootstrap;

// Get Bootstrap elements
const Row = ReactBootstrap.Row;
const Col = ReactBootstrap.Col;
const Well = ReactBootstrap.Well;
const Button = ReactBootstrap.Button;
const ButtonGroup = ReactBootstrap.ButtonGroup;

var ExampleVar = null;

// Initialize the namespace
const NAMESPACE = 'ExampleString';

class View extends foo.Bar {

  constructor() {
    super();

    this.nameSpace = NAMESPACE;

    ExampleModule = foo.bar('ExampleString');
  }
}

编辑:setStateInChunks()是在我的父组件中调用的函数,而不是标准this.setState()。这有点像这样使用

var newView = foo.getView('storedView') this.setStateInChunks(newView, _this);

0 个答案:

没有答案