Javascript 提高IE11的React渲染速度

Javascript 提高IE11的React渲染速度,javascript,angularjs,reactjs,jsx,Javascript,Angularjs,Reactjs,Jsx,我正在制作一个angular应用程序,它返回需要在页面上呈现的对象列表(大约30项) 为了提高渲染性能,我使用react组件。整个过程都是用typescript编写的,react组件如下所示: namespace app { 'use strict'; export interface IServiceOrganicProps extends IOrganicResultProps { result: Service; } export clas

我正在制作一个angular应用程序,它返回需要在页面上呈现的对象列表(大约30项)

为了提高渲染性能,我使用react组件。整个过程都是用typescript编写的,react组件如下所示:

namespace app {
    'use strict';
    export interface IServiceOrganicProps extends IOrganicResultProps {
        result: Service;
    }

    export class ServiceOrganic extends React.Component<IServiceOrganicProps, {}> {
        render(): any {
            return (
                <div className="service-organic flex">
                    <div className="layout-row">
                        <div className="icon">
                            <img src="img/service.ico"/>
                        </div>
                        <div className="flex layout-column">
                            <div className="title" title={"score: " + this.props.result.score}><a href={this.props.result.url}>{this.props.result.name}</a></div>
                            <div className="link">{this.props.result.url}</div>
                            <p className="body">{ this.props.result.description }</p>
                            <div className="tags">
                                <ul>
                                    {this.props.result.tags.map(function (tag) {
                                        return <li key={tag}><a href="#">{tag}</a></li>;
                                    }) }
                                </ul>
                            </div>
                        </div>
                    </div>
                </div>
            );
        }
    }
    angular.module("app").value("ServiceOrganic", ServiceOrganic);
    angular.module('app').directive('serviceOrganic', function (reactDirective: any, $log: angular.ILogService) {
        return reactDirective(ServiceOrganic, ['result'], {}, { $log: $log });
    });
} 
命名空间应用程序{
"严格使用",;
导出接口IServiceOrganicProps扩展了IOrganicResultProps{
结果:服务;
}
导出类ServiceReact.Component{
render():任何{
返回(
{this.props.result.url}

{this.props.result.description}

    {this.props.result.tags.map(函数(标记)){ 返回
  • ; }) }
); } } 角度模块(“应用”)值(“ServiceOrganic”,ServiceOrganic); angular.module('app').directive('serviceOrganic',function(reactDirective:any,$log:angular.ILogService){ 返回reactDirective(ServiceOrganic,['result'],{},{$log:$log}); }); }
这在chrome上非常有效:

  • 加载时间:1s
  • 渲染时间约160ms
  • 涂漆:~1.5ms
但在IE11上,这是:

  • 加载时间+4s
  • DOM事件(加载):~1.7s
  • 布局:~750ms

有没有办法增加IE的加载时间?

我认为这个问题的标题有点误导。不是语法“jsx”太慢,因为浏览器没有解释jsx,更准确的是,你发现它太慢了。@riscarrott:你说得对,我已经更新了标题