使用 KendoUI 在 Dotnet Core cshtml 文件中使用 ES6 函数
Use ES6 function inside a Dotnet Core cshtml file with KendoUI
我正在使用 Kendo UI 构建一个 Asp.Net 核心项目。我想使用 ES6 classes。只要我在 js 文件中声明我的 Kendo UI 网格以及我的其他 ES6 classes,我就能够使用它们。这是有效的方法
import transaction from './transactions';
import common from "../common";
import whenDomReady from "../document";
whenDomReady(function () {
$("#transactions-grid").kendoGrid({
dataSource: {
transport : {
read : {
url : "/Transactions/GetTransactions",
type : "POST",
dataType : "json",
data : transaction.searchFormData
}
},
schema: {
type: "json",
data: "data",
model: {
id:"TransactionId",
}
},
error : function (e){
common.display_kendoui_grid_error(e);
// Cancel the changes
this.cancelChanges();
},
pageSize : 500,
serverPaging : false,
serverFiltering : false,
serverSorting : false
},
dataBound: transaction.resizeSplitter,
columns:
[
{
field: "TransactionDate",
width: 50,
title:"When"
},
{
title: "Brand",
width: 80
},
{
field: "Location",
title: "Location",
width: 150
},
{
field: "TransactionType",
title: "Type",
width: 80
},
{
field: "Individual",
title: "Individual",
width: 80
},
{
field: "Quantity",
title: "Qty",
width: 80
},
{
field: "Amount",
title: "Amount",
width: 80
}
]
});
});
虽然这一切都很好。我想知道在使用 TagHelpers 在 cshtml 中定义网格时是否仍然可以利用 ES6 class 功能。所以像这样
<kendo-grid name="grid">
<datasource>
<transport>
<read type="POST" datatype="json" data="transaction.searchFormData" url="@Url.Action("GetTransactions","Transactions")"/>
</transport>
</datasource>
</kendo-grid>
这不起作用,因为函数 transaction.searchFormData 是在转译后的 js 文件中定义的。如何在我的 html 中访问转译函数?
我设法使用此媒介解决了我的问题 post。
https://itnext.io/calling-a-es6-webpacked-class-from-outside-js-scope-f36dc77ea130
我正在使用 Kendo UI 构建一个 Asp.Net 核心项目。我想使用 ES6 classes。只要我在 js 文件中声明我的 Kendo UI 网格以及我的其他 ES6 classes,我就能够使用它们。这是有效的方法
import transaction from './transactions';
import common from "../common";
import whenDomReady from "../document";
whenDomReady(function () {
$("#transactions-grid").kendoGrid({
dataSource: {
transport : {
read : {
url : "/Transactions/GetTransactions",
type : "POST",
dataType : "json",
data : transaction.searchFormData
}
},
schema: {
type: "json",
data: "data",
model: {
id:"TransactionId",
}
},
error : function (e){
common.display_kendoui_grid_error(e);
// Cancel the changes
this.cancelChanges();
},
pageSize : 500,
serverPaging : false,
serverFiltering : false,
serverSorting : false
},
dataBound: transaction.resizeSplitter,
columns:
[
{
field: "TransactionDate",
width: 50,
title:"When"
},
{
title: "Brand",
width: 80
},
{
field: "Location",
title: "Location",
width: 150
},
{
field: "TransactionType",
title: "Type",
width: 80
},
{
field: "Individual",
title: "Individual",
width: 80
},
{
field: "Quantity",
title: "Qty",
width: 80
},
{
field: "Amount",
title: "Amount",
width: 80
}
]
});
});
虽然这一切都很好。我想知道在使用 TagHelpers 在 cshtml 中定义网格时是否仍然可以利用 ES6 class 功能。所以像这样
<kendo-grid name="grid">
<datasource>
<transport>
<read type="POST" datatype="json" data="transaction.searchFormData" url="@Url.Action("GetTransactions","Transactions")"/>
</transport>
</datasource>
</kendo-grid>
这不起作用,因为函数 transaction.searchFormData 是在转译后的 js 文件中定义的。如何在我的 html 中访问转译函数?
我设法使用此媒介解决了我的问题 post。
https://itnext.io/calling-a-es6-webpacked-class-from-outside-js-scope-f36dc77ea130