V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐关注
Meteor
JSLint - a JavaScript code quality tool
jsFiddle
D3.js
WebStorm
推荐书目
JavaScript 权威指南第 5 版
Closure: The Definitive Guide
coolicer
V2EX  ›  JavaScript

Angular 动态生成表格,为什么边边很慢才显示。

  •  
  •   coolicer · 2014-05-31 14:55:22 +08:00 · 6855 次点击
    这是一个创建于 3828 天前的主题,其中的信息可能已经有所发展或是发生改变。
    <tbody ng-repeat="xxx">
    __<tr ng-repeat="xxx">

    ...

    虽然2个repeat,但是数据很少,才4个,半天都不显示边框线。但是在table后加一个<br/>就正常。是什么导致渲染迟缓
    第 1 条附言  ·  2014-06-01 09:13:24 +08:00
    就是表格最下面的边框要很久才显示,在表格后面加一个br标签就正常,话说这是技术提问,怎么变成了争吵,而且与我的主题无关。angular可能不如其他框架好,但是我问的这部分绝对跟性能无关,因为我都说了,数据量是很少的。
    第 2 条附言  ·  2014-06-01 09:22:13 +08:00
    就是表格最下面的边框要很久才显示,在表格后面加一个br标签就正常,话说这是技术提问,怎么变成了争吵,而且与我的主题无关。angular可能不如其他框架好,但是我问的这部分绝对跟性能无关,因为我都说了,数据量是很少的。
    22 条回复    2014-06-02 11:45:40 +08:00
    andyhu
        1
    andyhu  
       2014-05-31 15:28:31 +08:00   ❤️ 1
    放弃angularjs吧,我是来黑angular的
    jsonline
        2
    jsonline  
       2014-05-31 15:30:31 +08:00
    现在的人问代码问题怎么都补贴代码?
    jsonline
        3
    jsonline  
       2014-05-31 15:30:42 +08:00
    不贴代码
    coolicer
        4
    coolicer  
    OP
       2014-05-31 16:07:39 +08:00
    @jsonline 那就是代码。json就4个项,不用写这么仔细吧。
    anjianshi
        5
    anjianshi  
       2014-05-31 18:03:35 +08:00
    单元格这么少,应该不是 angular 的问题

    具体是什么情况呢?是页面其他部分都显示出来了只有这个表给没显示出来吗?
    另外,你说“不显示边框线”,是单元格的内容出现了,只有边框线没出现吗?
    xieranmaya
        6
    xieranmaya  
       2014-05-31 18:51:42 +08:00
    弱弱的问一句,你为什么要repeat tbody???
    xieranmaya
        7
    xieranmaya  
       2014-05-31 19:39:26 +08:00
    @andyhu 说说为什么要黑ng?
    clino
        8
    clino  
       2014-05-31 19:43:57 +08:00
    想起来以前 /t/83579 这个贴不少人说性能不重要不是大问题...
    andyhu
        9
    andyhu  
       2014-05-31 19:48:53 +08:00
    @xieranmaya 性能差,浏览器兼容差,架构也不怎么样,做些简单小应用效率还行,一旦项目复杂需求特殊的话,angular可以弄得很麻烦。另外把项目迁移到angular需要整个重写逻辑,万一angular以后如google wave一样黄了,再改用其他框架也是很麻烦的。所以一直不喜angular
    p2p
        10
    p2p  
       2014-05-31 20:30:49 +08:00
    <tbody ng-repeat='item in [1,2,3,4]'>
    <tr ng-repeat='item in [1,2,3,4]'>

    有什么问题?@coolicer
    ddzz
        11
    ddzz  
       2014-05-31 21:23:25 +08:00 via Android
    @andyhu 同黑,见angularjs一次黑一次
    ddzz
        12
    ddzz  
       2014-05-31 21:36:19 +08:00 via Android
    @xieranmaya 谷歌每推出一项新技术都声称革命性,如楼上 @andyhu 所说,当年wave也是声称革email的命,革着革着就没下文了。golang先是号称系统级语言革c语言的命,发现c语言这个硬骨头咬不动就去咬ruby、python、java,跟C语言比开发效率,跟ruby比运行效率,跟java比轻便。

    angularjs,没错,又是个革命性的创新,这次革命的矛头对准的是jquery,像一个破坏人家庭的小三:“我和jquery你只能选一个”,忽悠了一群码农退jquery保平安
    rankjie
        13
    rankjie  
       2014-05-31 21:39:04 +08:00 via iPhone
    @ddzz 你这种无脑黑真低端啊…先查查资料再来喷也来得及的
    ravenw
        14
    ravenw  
       2014-06-01 00:50:10 +08:00
    同上
    chemzqm
        15
    chemzqm  
       2014-06-01 00:58:03 +08:00
    Angular就是性能差一些,代码调用乱一些,维护起来恶心一些,做些简单的CRUD表单应用还是非常有效率的啊。
    yyfearth
        16
    yyfearth  
       2014-06-01 03:14:41 +08:00
    @xieranmaya
    @p2p

    对啊 貌似应该是
    <tr ng-repeat='row in rows'>
    <td ng-repeat='cell in row'>
    才对来着吧?
    guotie
        17
    guotie  
       2014-06-01 09:52:14 +08:00
    zhouzm
        18
    zhouzm  
       2014-06-01 11:24:57 +08:00
    高性能看这里:
    http://blog.scalyr.com/2013/10/31/angularjs-1200ms-to-35ms/

    上面黑ng性能的,提供一些非ng实现的高性能例子呢
    ipoly
        19
    ipoly  
       2014-06-01 17:46:42 +08:00
    LZ 用的什么浏览器?
    我在 chrome 下试试没发现什么问题。
    http://jsfiddle.net/ipoly/La6rC/
    xieranmaya
        20
    xieranmaya  
       2014-06-01 23:02:45 +08:00
    @ddzz
    @andyhu 我觉得ng跟wave或者google reader没有可比性,ng是开源框架,而wave,reader是google的产品,这明显不一样样啊。而且就算哪天gg不维护ng了,社区可以马上fork出一个来
    另外性能问题在未来有了observer完全不是问题
    兼容性问题,完全就是程序员纵容了用户,君不见微信网页版,人人网v7都不支持67的
    但有些网站(比如qq首页),在6,7下竟然连个升级提示都没有,你说不是程序员(产品狗?)纵容用户是什么
    anjianshi
        21
    anjianshi  
       2014-06-02 06:43:01 +08:00
    @coolicer 这个问题是在所有浏览器下都这样吗?
    只是最下面的边框不显示的话,会不会是 css 问题或者某些浏览器的 bug 之类的?

    感觉还有可能是表格下面的某个元素在页面初始化时因为某些原因把表格最下方给挡住了,导致下面的边框没显示,在页面不断渲染的过程中,它的位置往下去了,边框就又显示了出来。造成了边框渲染缓慢的假象。
    加<br>后把下面那个元素给顶下去了,所以就不再出现这个问题
    xieranmaya
        22
    xieranmaya  
       2014-06-02 11:45:40 +08:00
    题主你说你为毛不给个jsbin或者其它什么的链接。。。。
    给段看都看不清的代码,让人怎么给你解决问题。。。。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5164 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 101ms · UTC 09:15 · PVG 17:15 · LAX 01:15 · JFK 04:15
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.