标签: react-jsx

使用浏览器/插件调试JSX

有没有办法调试JSX文件?

当我检查safari/chrome中的资源选项卡时,我无法看到.jsx文件.我们可以使用调试器吗?

javascript reactjs react-jsx

16
推荐指数
2
解决办法
2万
查看次数

使用ReactJS突出显示文本

我正在尝试突出显示与查询匹配的文本,但我无法弄清楚如何使标记显示为HTML而不是文本.

var Component = React.createClass({
    _highlightQuery: function(name, query) {
        var regex = new RegExp("(" + query + ")", "gi");
        return name.replace(regex, "<strong>$1</strong>");
    },
    render: function() {
        var name = "Javascript";
        var query = "java"
        return (
            <div>
                <input type="checkbox" /> {this._highlightQuery(name, query)}
            </div>
        );
    }
});
Run Code Online (Sandbox Code Playgroud)

当前输出:<strong> Java </ strong>脚本

期望的输出:Java脚本

javascript reactjs react-jsx

16
推荐指数
4
解决办法
2万
查看次数

在props.children中逃脱卷曲括号

我正在尝试传递一个Handlebars模板,以便this.props.children使用以下JSX代码段进行处理:

<MyComponent>
  My address is {{address}}.
</MyComponent>
Run Code Online (Sandbox Code Playgroud)

结果是Uncaught ReferenceError: address is not defined.

解决方法是使用类似的东西:

<MyComponent>
  <span content="My address is {{address}}."></span>
</MyComponent>
Run Code Online (Sandbox Code Playgroud)

然后使用this.props.children.props.content.这是我发现基本上逃避{{address}}被JSX解释为插值的唯一方法.

有没有一种简单的方法来逃避JSX中的花括号?

javascript reactjs react-jsx

16
推荐指数
2
解决办法
5365
查看次数

Babel错误:JSX值应该是表达式或带引号的JSX文本

当我尝试将JSX代码编译成JS时,我收到Babel的错误.如果这是一个明显的问题,我是新来的,如此道歉,我无法找到任何与之相关的内容.我试图在这段代码中使用props,并将pageTitle prop传递给我的FieldContainer组件.这给了我一个问题,那就是不要让代码编译成JS.我在搜索中发现,道具值应该在两者之间传递{},但添加这些值并没有帮助.有任何想法吗?谢谢!

通天塔错误

reactjs react-jsx babeljs

16
推荐指数
2
解决办法
3万
查看次数

WebStorm/PhpStorm警告jsx中的react属性,如className

我无法在反应代码中删除以下警告." className这里不允许属性".

  • PhpStorm中的警告

在PhpStorm警告

  • 未知的HTML标记属性不能设置为camelcase只保存小写,并且关闭检查没有帮助.

未知的HTML标记属性不能设置为camelcase只保存小写,并且关闭检查没有帮助

  • 设置中 Languages & Frameworks > JavaScript > Libraries

语言和框架中的设置> JavaScript>库

你能帮助我吗?我对jsx中的每个属性都有警告.编辑器设置jsx和谐.

javascript warnings jsx webstorm react-jsx

16
推荐指数
2
解决办法
4745
查看次数

为什么此选择列表不会使用基于defaultValue选择的正确项目进行渲染

我有一个ReactJS组件:

var RegionsList = React.createClass({

    handleChange: function () {
        var regionId = this.refs.userRegions.getDOMNode().value;
        this.props.onRegionSelected(regionId);
    },

    componentDidMount: function() {
        $.get("/translation/activeuserregions", function(result) {
            if(this.isMounted()) {
                this.setState({
                    selectedRegionId: result.SelectedRegionId,
                    regions: result.Regions
                })
            }     
        }.bind(this));
    },

    getInitialState: function(props) {
        return {
            selectedRegionId: '',
            regions: []    
        }    
    },

    render: function() {
        return (
            <div id="RegionsListForm" className="navbar-form navbar-left regions-list">
                <div className="input-group navbar-searchbox">
                    <span className="input-group-addon">
                        <span>Region</span>
                    </span>
                    <select ref="userRegions" onChange={this.handleChange} defaultValue={this.state.selectedRegionId} className="form-control valid" id="region" name="region" aria-invalid="false">
                        {this.state.regions.map(function(region) {
                            return <option key={region.Id} value={region.Id} label={region.RegionName}>{region.RegionName}</option>        
                        })}                                             
                    </select> …
Run Code Online (Sandbox Code Playgroud)

javascript reactjs react-jsx

15
推荐指数
1
解决办法
8009
查看次数

coffeescript-react(.cjsx)支持Webstorm

有没有办法在WebStorm中为.cjsx(coffeescript中的jsx)文件获取任何语法高亮?

目前,我正在使用Sublime插件,这很棒,但如果可能的话,我宁愿留在WebStorm中.我理解WebStorm支持TextMate包,所以这可能是一个可行的选择,但我找不到一个cjsx.

syntax-highlighting coffeescript webstorm reactjs react-jsx

15
推荐指数
3
解决办法
2736
查看次数

Babel 6对JSX变换器做出反应 - 禁用严格

问题

我正在使用babel 6进行反应JSX转换.但是我没有使用react预设,我只使用'transform-react-jsx'插件(并尝试使用strict-mode disable选项),这是我的.babelrc

{
  "plugins": [
    ["transform-react-jsx"]
  ],
  "sourceMaps": true,
  "strictMode": false
}
Run Code Online (Sandbox Code Playgroud)

但是我需要一个使用'with'(我的控制之外)的第三方javascript,它会发出以下错误:[SyntaxError:foo.js:'with'in strict mode ..]

所以我需要禁用严格模式,这个问题和这个问题一样,但是我没有使用es6/es2015的东西,只有jsx转换.

有了babel 6,没有黑名单,我只指定了一个插件,所以我怀疑没有办法禁用.

javascript reactjs react-jsx babeljs

15
推荐指数
1
解决办法
1552
查看次数

ReactJS + Redux:如何将动作创建者构建到每个组件?

我有一个名为的父组件App.js:

...

render() {
  return (
    <div>
      {React.cloneElement(this.props.children, this.props}
    </div>
  )
}

...

function mapDispatchToProps(dispatch) {
  return (
    actions: bindActionCreators(actions, 
  )
}

export default connect(
  ...,
  mapDispatchToProps
)(App)
Run Code Online (Sandbox Code Playgroud)

道具将传递给每个组件.我想让每个组件都有自己的动作创建者文件,但是如何将所有动作创建者绑定到一个组件中,以便动作创建者可以从该App.js级别传递下去?任何其他建议也将受到赞赏,以便将动作创建者分解为每个组件.

这是迄今为止的结构:

ComponentOne
..actions.js //action creators
..ComponentOne.js
ComponentTwo
..actions.js //action creators
..ComponentTwo.js
App.js
actions.js//should I compile all the action creators here?
Run Code Online (Sandbox Code Playgroud)

每个人actions.js都会这样做:

let actions = {
  logSayings() {
    ...
  }
}

export default actions
Run Code Online (Sandbox Code Playgroud)

提前谢谢你,并将upvote /接受答复.

REDUX设置

store.js

import { applyMiddleware, compose, createStore } from 'redux' …
Run Code Online (Sandbox Code Playgroud)

javascript reactjs react-jsx redux

15
推荐指数
3
解决办法
1861
查看次数

.map()undefined不是React.js中的函数

是的,我可能在这里错过了明显的但是我得到了一个'未捕获的TypeError:undefined不是一个函数'我似乎是.map()这是问题,但我不明白为什么.

var idealist = React.createClass({
loadCommentsFromServer: function() {
    $.ajax({
        url: this.props.url,
        dataType: 'json',
        success: function(data) {
            this.setState({data: data});
        }.bind(this)
    });
},
handleButtonClick: function(input) {
    // do stuff //
},
getInitialState: function() {
    return {data: []};
},
componentWillMount: function() {
    this.loadCommentsFromServer();
    setInterval(this.loadCommentsFromServer, this.props.pollInterval);
},
render: function() {
    var clickFunction = this.handleButtonClick;
    var ideas = this.state.data.map(function(i){
        return <ideabox data={i} onButtonClick={clickFunction} />;
    });
    return (
        <div className="idealist">
            {ideas}
        </div>
        );
}
});

React.renderComponent(
<idealist  url="/json/quotes.php"  pollInterval={2000}/>,
document.getElementById('quoteList')
);
Run Code Online (Sandbox Code Playgroud)

如果我将其更改为var ideas = this.state.data我没有收到任何错误,JSON数据格式正确,可能出错?

javascript reactjs react-jsx

14
推荐指数
2
解决办法
4万
查看次数