小编Hea*_*rts的帖子

Jest transformIgnorePatterns无效

我花了很长时间查看有关此问题的其他问题并查看Github上的其他项目,但似乎没有任何答案对我有用.

我正在我的项目中加载第三方库,当运行Jest测试时,我收到错误

export default portalCommunication;
^^^^^^

SyntaxError: Unexpected token export

> 1 | import portalCommunication from 'mathletics-portal-communication-service';
Run Code Online (Sandbox Code Playgroud)

我已尝试以多种方式更新我的Jest配置以使其转换此库但我总是得到相同的错误.

这是我当前的jest.config.js文件:

module.exports = {
    moduleNameMapper: {
        '\\.(css|scss)$': 'identity-obj-proxy',
        '\\.svg$': '<rootDir>/test/mocks/svg-mock.js'
    },
    setupFiles: ['./test/test-setup.js'],
    transformIgnorePatterns: [
        '<rootDir>/node_modules/(?!mathletics-portal-communication-service)'
    ]
};
Run Code Online (Sandbox Code Playgroud)

我还尝试添加transform属性来对这个mathletics-portal-communication-service目录运行babel-jest.

请帮忙!

javascript reactjs jest babel-jest

12
推荐指数
4
解决办法
3435
查看次数

Flex Spark列表鼠标滚轮滚动速度

我有一个扩展Spark列表的组件,当我使用鼠标滚轮滚动时,它一次滚动太多.我试图在List类和VerticalLayout类中寻找处理鼠标滚轮滚动的处理程序来覆盖,但我找不到它.

还有其他方式我应该改变这个,或者我错过了什么?

apache-flex scroll list mousewheel flex-spark

7
推荐指数
1
解决办法
4470
查看次数

装饰Angular的$ log以使用使用$ http的服务

我正在尝试扩展$log服务,以便它也向服务器发送消息.我从Angular" 循环依赖发现 "作为$http用途收到错误$log.

app.js:

angular.module("app").config(function($provide) {
    $provide.decorator("$log", function($delegate, NodeLogger) {
        var logFn = $delegate.log;
        $delegate.log = function(message) {
            NodeLogger.log(message);
            logFn.apply(null, arguments);
        };
    });
});
Run Code Online (Sandbox Code Playgroud)

NodeLogger.js:

angular.module("app").factory("NodeLogger", function($http) {

    function log(type, message) {
        var logMessage = type + ":" + message;
        $http.post("http://localhost:3000/log", "message=" + logMessage);
    }

    return {
        log: log
    }
});
Run Code Online (Sandbox Code Playgroud)

我已经尝试使用$injectorin app.js来加载$http并只是发出POST请求,但它给出了同样的错误.有办法解决这个问题吗?我可以避免使用$http/ $resource

谢谢!

logging http decorator angularjs

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

Spark标签截断问题

我有一个Flex spark Label组件,其属性width = 125,maxDisplayedLines = 1.当文本显示太长时,这会成功截断文本,但如果涉及括号,则文本会以我不想要的方式截断.

例如,我将文本设置为"你(chinchiheather)"并显示"你(..."从不在括号中显示文本的任何部分,除非它可以显示所有部分.我更喜欢"你(chinchi ......) "而不是我给予的东西.我可以设置一些属性,以便不特别对待括号,或者有人知道其他方式吗?

谢谢 :)

apache-flex label truncate actionscript-3

4
推荐指数
1
解决办法
4145
查看次数

对 rollup.js 外部使用 glob 或 regex 模式

是否可以在我的汇总配置中对外部使用 glob 或 regex 模式?使用此配置:

export default {
  ...
  external: [
    'prop-types',
    'react',
    'prettier/standalone',
    'prettier/parser-babylon',
    'react-syntax-highlighter/prism-light',
    'react-syntax-highlighter/languages/prism/jsx',
    'react-syntax-highlighter/styles/prism/tomorrow',
    'react-element-to-string'
  ],
  ...
};
Run Code Online (Sandbox Code Playgroud)

我想做类似的事情:

export default {
  ...
  external: [
    'prop-types',
    'react',
    'prettier/**',
    'react-syntax-highlighter/**',
    'react-element-to-string'
  ],
  ...
};
Run Code Online (Sandbox Code Playgroud)

javascript bundle rollupjs

4
推荐指数
1
解决办法
503
查看次数

模拟服务注入Angular模块运行块

在我的module.run块中,它正在调用我所做的服务上的方法.在运行我的测试时,我希望它引用模拟服务而不是正在发出http请求的模拟服务.我目前正在尝试测试一个控制器,而不是实际的运行块本身 - 如何将模拟服务注入到run函数中?我尝试过使用$ provide.factory,但它似乎没有做任何事情,仍然正常加载服务.

我正在使用Jasmine来编写我的测试.

app.js

angular.module("app")
    .run(function(MyService) {
        MyService.log("starting app");
    });
Run Code Online (Sandbox Code Playgroud)

test.js

describe("MyController", function() {

    beforeEach(function() {
        module(function ($provide) {
            $provide.factory("MyService", { log: function(){} });
        });
    });

    // I want module 'app' to execute its run function using injected value for MyService
    beforeEach(module("app"));

    beforeEach(inject(function($controller, $rootScope) {
        MyController = $controller("MyController", { $scope: $rootScope.$new() });
    }));

    ...........

});
Run Code Online (Sandbox Code Playgroud)

unit-testing mocking inject jasmine angularjs

3
推荐指数
1
解决办法
2990
查看次数