Skip to content

Instantly share code, notes, and snippets.

@JeroenVinke
Created April 25, 2017 10:17
Show Gist options
  • Save JeroenVinke/74598dce91e5cee43059e2a4336bc4d0 to your computer and use it in GitHub Desktop.
Save JeroenVinke/74598dce91e5cee43059e2a4336bc4d0 to your computer and use it in GitHub Desktop.
Grid: detail template
<template>
<require from="aurelia-kendoui-bridge/grid/grid"></require>
<require from="aurelia-kendoui-bridge/grid/col"></require>
<require from="aurelia-kendoui-bridge/common/template"></require>
<require from="./my-custom-element"></require>
<ak-grid k-data-source.bind="datasource">
<ak-col k-title="First Name" k-field="FirstName"></ak-col>
<ak-template for="detailTemplate">
<customer-orders customer.bind="$this" orders.bind="Orders" firstname.bind="FirstName"></customer-orders>
</ak-template>
</ak-grid>
<style>
.k-detail-cell .k-tabstrip .k-content {
padding: 0.2em;
}
.employee-details ul
{
list-style:none;
font-style:italic;
margin: 15px;
padding: 0;
}
.employee-details ul li
{
margin: 0;
line-height: 1.7em;
}
.employee-details label
{
display:inline-block;
width:90px;
padding-right: 10px;
text-align: right;
font-style:normal;
font-weight:bold;
}
</style>
</template>
export class BasicUse {
pageable = {
refresh: true,
pageSizes: true,
buttonCount: 10
};
constructor() {
this.datasource = {
data: [{
FirstName: 'foo',
Orders: [{
OrderId: '12345'
}, {
OrderId: '6789'
}]
}, {
FirstName: 'bar',
Orders: [{
OrderId: '0987'
}, {
OrderId: '65432'
}]
}]
};
}
}
<!doctype html>
<html>
<head>
<title>Aurelia KendoUI bridge</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://kendo.cdn.telerik.com/2016.2.714/styles/kendo.common.min.css">
<link rel="stylesheet" href="https://kendo.cdn.telerik.com/2016.2.714/styles/kendo.rtl.min.css">
<link rel="stylesheet" href="https://kendo.cdn.telerik.com/2016.2.714/styles/kendo.default.min.css">
<link rel="stylesheet" href="https://kendo.cdn.telerik.com/2016.2.714/styles/kendo.mobile.all.min.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/bluebird/3.4.0/bluebird.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/chroma-js/1.2.1/chroma.min.js"></script>
<script src="https://kendo.cdn.telerik.com/2016.2.714/js/jquery.min.js"></script>
<script src="https://kendo.cdn.telerik.com/2016.2.714/js/jszip.min.js"></script>
<script src="https://kendo.cdn.telerik.com/2016.2.714/js/kendo.all.min.js"></script>
</head>
<body aurelia-app="main">
<h1>Loading...</h1>
<script src="https://cdnjs.cloudflare.com/ajax/libs/systemjs/0.19.6/system.js"></script>
<script src="https://rawgit.com/aurelia-ui-toolkits/aurelia-kendoui-bundles/1.5.0/config2.js"></script>
<script>
System.import('aurelia-bootstrapper');
</script>
</body>
</html>
export function configure(aurelia) {
aurelia.use
.standardConfiguration()
.developmentLogging()
.plugin('aurelia-kendoui-bridge');
aurelia.start().then(a => a.setRoot());
}
<template>
<require from="aurelia-kendoui-bridge/grid/grid"></require>
<require from="aurelia-kendoui-bridge/grid/col"></require>
<require from="aurelia-kendoui-bridge/common/template"></require>
<p>This is a custom element, showing orders for ${firstname}. Has access to the current expanded item: ${customer.FirstName}</p>
<ak-grid k-data-source.bind="orders">
<ak-col k-title="OrderId" k-field="OrderId"></ak-col>
</ak-grid>
</template>
import {bindable} from 'aurelia-framework';
export class CustomerOrdersCustomElement {
@bindable orders;
@bindable firstname;
@bindable customer;
bind() {
this.datasource = {
data: this.orders
};
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment