将Jquery插件转换为Angular Directives

时间:2014-12-07 15:53:42

标签: javascript jquery angularjs

我将jquery插件转换为angular指令时遇到问题,这里是我的jquery插件调用:

$('#fixed_hdr2').fxdHdrCol({
        fixedCols: 0,
        width: "100%",
        height: 400,
        colModal: [
        { width: 50, align: 'center' },
        { width: 110, align: 'center' },
        { width: 170, align: 'left' },
        { width: 250, align: 'left' },
        { width: 100, align: 'left' },
        { width: 70, align: 'left' },
        { width: 100, align: 'left' },
        { width: 100, align: 'center' },
        { width: 90, align: 'left' },
        { width: 400, align: 'left' }
        ],
        sort: true
    });

当我将其转换为角度指令时,它将如下所示:

myApp.directive('fixedTable', function () {
return {
    restrict: 'AE',
    link: function (scope, element, attrs) {
        element.fxdHdrCol({
            fixedCols: attrs.fixedCols,
            width: attrs.width,
            height: attrs.height,
            colModal: [
               { width: 80, align: 'left'},
               { width: 250, align: 'left'},
               { width: 100, align: 'left'},
               { width: 100, align: 'left'},
               { width: 130, align: 'left'},
               { width: 100, align: 'left'},
               { width: 150, align: 'left'},
               { width: 130, align: 'center'},
               { width: 100, align: 'left'},
               { width: 150, align: 'left'}
            ]
        });
    }
}; })

这是我的错误 - > " TypeError:无法读取属性' width'未定义" 我知道我在转换方面有误,但我不知道如何正确转换它。非常感谢任何帮助。感谢

1 个答案:

答案 0 :(得分:1)

你的HTML代码?

错误:" TypeError:无法读取属性' width'未定义"

可能性1:宽度:attrs.width
可能性2:colModal和table的列不一致