小编Ami*_*ail的帖子

在angular 1.5组件中使用$ emit

我正在使用angular 1.5组件,并且需要在子组件中的$ emit时调用父控制器中的函数.我们怎么做到这一点?

例:

(function (angular) {
    'use strict';

    controllerName.$inject = [];

    function controllerName() {
       var _this = this;
       function toBeCalledOnEmit() {//some code}
       var vm = {
          toBeCalledOnEmit: toBeCalledOnEmit
       }
       angular.extend(_this, vm);
    }

    angular.module('moduleName', [
    ]).component('parentComponenet', {
        templateUrl: 'templateUrl',
        controller: 'controllerName'
    }).controller('controllerName', controllerName);

})(angular);
Run Code Online (Sandbox Code Playgroud)

子组件:

(function (angular) {
    'use strict';

    childController.$inject = [];

    function childController() {
       //needs $emit here
    }

    angular.module('childModuleName', [
    ]).component('childComponent', {
        templateUrl: 'templateUrl',
        controller: 'childController'
    }).controller('childController', childController);

})(angular);
Run Code Online (Sandbox Code Playgroud)

angularjs angularjs-directive angularjs-scope

14
推荐指数
1
解决办法
1万
查看次数

在几个连续标签之后,行明智的tabindex失去焦点

我有一个只有1列和大约1000行的ui-grid.每行中都有一个文本框.我想通过选项卡浏览文本框.这可以很好地工作大约10到15行,之后文本框失去焦点,然后如果再次按Tab键,它将跳过下面几行并跳转到另一个文本框.

请在此处查看问题plnkr

UI-Grid选项:

$scope.gridOptions = {
    rowHeight: '200',
    enableColumnMenus: false,
    paginationPageSize: 2000,
    columnDefs: [
      {name:"value", width:'*',
        cellTemplate: gridTemplate,
      }
    ],
    data: gridData
};
Run Code Online (Sandbox Code Playgroud)

angularjs angular-ui-grid ui-grid

11
推荐指数
1
解决办法
475
查看次数

.toBe() 和 .toEqual() 之间的区别 - Jasmine Karma 测试用例

我使用 Jasmine karma 测试用例一段时间,发现测试有时会失败,因为使用 .toBe() 而不是 .toEqual()。.toBe() 和 .toEqual()之间有什么区别以及何时使用它们?

jasmine angularjs karma-jasmine

5
推荐指数
1
解决办法
1万
查看次数

下载 XLSX 已损坏

我正在尝试将 HTML 表转换为 XLSX uisng AngularJS 甚至纯 JavaScript。

当我使用下面的下载正常转换为 XLS 时,一个 XLS 文件正在打开。

var blob = new Blob([template], {type: "data:application/vnd.ms-excel"});
window.navigator.msSaveOrOpenBlob(blob, "myExcel.xls"); 
Run Code Online (Sandbox Code Playgroud)

但是,我的要求需要 XLSX 中的文件,所以我在相同的代码中更改了文件的 MIME 类型和扩展名,如下所示,

var blob = new Blob([template], {type: "data:application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"});
window.navigator.msSaveOrOpenBlob(blob, "myExcel.xlsx");
Run Code Online (Sandbox Code Playgroud)

但是当我打开下载的 xlsx 文件时,它已损坏,并且 MS Office 会弹出错误弹出窗口。

我做错了什么以及如何将 HTML 表转换为XLSX?甚至替代的想法也被接受。

PS:表格相当复杂,列中的行等等,所以像 ALASQL、JS-XLSX 这样的插件没有帮助。

javascript excel xlsx angularjs

5
推荐指数
1
解决办法
1万
查看次数