Col.js
1.81 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
/**
* 列
*/
import template from "./Col.html";
import style from "antd/lib/grid/style/index.css";
angular.module("esNgAntd").directive("antdCol", function (esNgAntd) {
return {
controllerAs: "antdCol",
restrict: "E",
transclude: true,
replace: true,
scope: {
span: "@",
offset: "@",
},
template: template,
controller: function ($scope, $element, $attrs) {
this.getContext = function () {
return $scope;
};
$scope.state = {
className: ["ant-col"],
};
},
require: ["?^antdRow"],
link: function ($scope, $element, $attrs, $controllers, $transclude) {
let [antdRow] = $controllers;
esNgAntd.createStyle("ant-grid", style);
$element[0].removeAttribute("ng-style");
$element[0].removeAttribute("ng-transclude");
$element[0].removeAttribute("ng-class");
$element[0].removeAttribute("span");
if (antdRow) {
$scope.antdRow = antdRow.getContext();
}
if ($scope.span) {
$scope.state.className.push("ant-col-" + $scope.span);
} // if (this.props.xs) {
// this.state.className.push("col-xs-" + this.props.xs);
// }
// if (this.props.sm) {
// this.state.className.push("col-sm-" + this.props.sm);
// }
// if (this.props.md) {
// this.state.className.push("col-md-" + this.props.md);
// }
// if (this.props.lg) {
// this.state.className.push("col-lg-" + this.props.lg);
// }
// this.state.className = this.state.className.join(" ");
},
};
});