如何在AngularJs组件中使用embed Angular UiGrid
How to use embed Angular UiGrid in AngularJs Component
我尝试在组件中嵌入 ui-grid,但嵌入的 ui-grid 不呈现
I built a Plnkr 可视化问题。
index.html
<!doctype html>
<html ng-app="app">
<head>
<scripts> ... </script>
</head>
<body>
<div ng-controller="MainCtrl as $ctrl">
DataGrid in HTML
<div id="grid1" ui-grid="{ data: $ctrl.myData }" class="grid"></div>
<h1>Template/ Component</h1>
<hero-detail hero="$ctrl.hero" myData="$ctrl.myData"}"</hero-detail>
</div>
<script src="app.js"></script>
</body>
</html>
app.js
angular.module('app', ['ngTouch', 'ui.grid'])
.controller('MainCtrl', MainCtrl)
.component('heroDetail', {
template: `
<div>
DataGrid in Template
<div id="grid1" ui-grid="{ data: $ctrl.myData }" class="grid"></div>
<span>Name: {{$ctrl.hero.name}}</span>
</div>
`,
bindings: {
hero: '=',
myData: '='
}
});
function MainCtrl() {
this.hero = {name: 'Spawn'};
this.myData = [
{
firstName: "Cox",
lastName: "Carney",
company: "Enormo",
employed: true
},
...
];
}
您知道如何找到可行的解决方案吗?
感谢您的输入!
查看此 github,组件中的所有 camelCase 绑定都转换为 html 中的 kabab-case。因此,您在 index.html
中的组件引用需要从
更改
<hero-detail hero="$ctrl.hero" myData="$ctrl.myData"></hero-detail>
进入
<hero-detail hero="$ctrl.hero" my-data="$ctrl.myData"></hero-detail>
此外,旁注,您有一个错字,其中 ="$ctrl.myData"}"</hero-detail>
需要更改为 ="$ctrl.myData"></hero-detail>
我尝试在组件中嵌入 ui-grid,但嵌入的 ui-grid 不呈现
I built a Plnkr 可视化问题。
index.html
<!doctype html>
<html ng-app="app">
<head>
<scripts> ... </script>
</head>
<body>
<div ng-controller="MainCtrl as $ctrl">
DataGrid in HTML
<div id="grid1" ui-grid="{ data: $ctrl.myData }" class="grid"></div>
<h1>Template/ Component</h1>
<hero-detail hero="$ctrl.hero" myData="$ctrl.myData"}"</hero-detail>
</div>
<script src="app.js"></script>
</body>
</html>
app.js
angular.module('app', ['ngTouch', 'ui.grid'])
.controller('MainCtrl', MainCtrl)
.component('heroDetail', {
template: `
<div>
DataGrid in Template
<div id="grid1" ui-grid="{ data: $ctrl.myData }" class="grid"></div>
<span>Name: {{$ctrl.hero.name}}</span>
</div>
`,
bindings: {
hero: '=',
myData: '='
}
});
function MainCtrl() {
this.hero = {name: 'Spawn'};
this.myData = [
{
firstName: "Cox",
lastName: "Carney",
company: "Enormo",
employed: true
},
...
];
}
您知道如何找到可行的解决方案吗?
感谢您的输入!
查看此 github,组件中的所有 camelCase 绑定都转换为 html 中的 kabab-case。因此,您在 index.html
中的组件引用需要从
<hero-detail hero="$ctrl.hero" myData="$ctrl.myData"></hero-detail>
进入
<hero-detail hero="$ctrl.hero" my-data="$ctrl.myData"></hero-detail>
此外,旁注,您有一个错字,其中 ="$ctrl.myData"}"</hero-detail>
需要更改为 ="$ctrl.myData"></hero-detail>