代码之家  ›  专栏  ›  技术社区  ›  binki

如何从文件上载k-select事件更新范围?

  •  0
  • binki  · 技术社区  · 7 年前

    当我阅读 https://docs.telerik.com/kendo-ui/AngularJS/introduction k-on- 前缀而不是 k-

    通过k-on属性设置处理程序

    还可以使用属性指定事件处理程序。他们需要 k-on- 前缀

    <div ng-app="app" ng-controller="MyCtrl">
       <input kendo-date-picker k-on-change="onDateSelected(kendoEvent)" />
       <p ng-show="selected">A month was picked</p>
     </div>
    

    这个 kendoEvent 变量是在作用域中定义的,您必须将其传递给事件处理程序。如果您正在使用 $digest() 在作用域上,因为绑定会处理它。

    然而,当我试着用 file-upload 戥戥s select

    <input name="files"
      type="file"
      kendo-upload
      k-async="{ saveUrl: 'save', removeUrl: 'remove', autoUpload: true }"
      k-on-select="onSelect"
      />
    

    如果我将其作为 k-select 相反,但有时我对 $scope

    我是否正确阅读剑道文档?我如何解决这个问题?

    1 回复  |  直到 7 年前
        1
  •  0
  •   binki    7 年前

    这个 k-on-select 事实上,属性确实起作用。然而 k-on-select Scope#$eval 并将其作为表达式执行。这是AngularJS事件惯例。因为我传递了一个解析为函数的表达式,所以每次 k-on-select 进行了评估。

    «function»() . 在kendos AngularJS支持中,它通过一个名为 kendoEvent (而AngularJS中生成的事件在一个名为 $event )。我更正的代码如下所示:

    <input name="files"
      type="file"
      kendo-upload
      k-async="{ saveUrl: 'save', removeUrl: 'remove', autoUpload: true }"
      k-on-select="onSelect(kendoEvent)"
      />
    

    幸亏 Lex 谁在报告中指出了这一点 his comment