小编Yan*_*ong的帖子

在电子中使用量角器

我正在尝试为使用Protractor的Electron运行的应用程序设置单元测试和e2e测试.我一直在推荐许多不同的帖子(这个确实有帮助),但我仍然得到一个我不明白的错误:

Message:
  Error while waiting for Protractor to sync with the page: "angular could not be found on the window"
Stacktrace:
  undefined
Run Code Online (Sandbox Code Playgroud)

我的conf.js文件如下所示:

exports.config = {
    directConnect : true,
    seleniumAddress: 'http://localhost:4444/wd/hub',
    baseUrl:"file://home/me/workspace/testing-project/main.js",
    capabilities: {
        browserName: "chrome",
        chromeOptions: {
            binary: "/home/me/.linuxbrew/lib/node_modules/electron-prebuilt/dist/electron",
            args: ["--test-type=webdriver"]
        }
    },
    specs: ['todo-specs.js'],
    onPrepare: function(){
        browser.resetUrl = "file://";
        browser.driver.get("file://");
    }
};
Run Code Online (Sandbox Code Playgroud)

考虑到量角器网站上提供的文档,我的印象是我不需要安装任何其他东西(例如Jasmine).
让我感到惊讶的是,尽管main.js的路径(根据Electron的规格启动应用程序)是正确的,但我看不到弹出的Electron窗口中的任何内容.
你们有没有遇到过这个问题?你有设法解决它吗?

testing angularjs protractor electron

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

TypeScript:如何不使用相对路径来导入类?

我目前正在使用 TypeScript 和 Angular2 开发一个 Electron 应用程序,为此我创建了许多不同的类,所有类都在单独的文件中。为了使我的应用程序的重构更容易,我希望在导入这些类时不必使用相对路径。
现在,要导入它们,我使用以下语法:import {Trigger} from './../../trigger/ts/trigger.component';
我想做的是使用如下所示的语法:import {Trigger} from 'trigger.component';
这可能吗?

typescript electron angular

5
推荐指数
2
解决办法
8773
查看次数

如何将$ scope中的变量传递给指令,并反转?

我目前正在尝试实现一个应该使一些DOM元素闪烁的指令.为此,我$timeout用于将元素的可见性设置为可见或隐藏.我的问题是,如果在$timeout通话中我硬编码一个值(比如'500'),一切都运行得很顺利.但是如果我尝试通过变量传递这个参数,我会让元素快速闪烁,好像没有输入任何参数(默认值为'0').

HTML

<button class="btn btn-key"><span class="blink" blinkSpeed='500'>Q</span></button>
{{displayBlinkSpeed}}
Run Code Online (Sandbox Code Playgroud)

JS

.directive('blink',function($timeout){
return{
    restrict:'ACE',
    transclude: true,
    scope:{
        blinkSpeed: '='
    },
    link: function(scope,element,attrs){
        function showElement(){             
            var speed = parseInt(scope.blinkSpeed);
            element.css("visibility","visible");
            $timeout(hideElement,speed);
            scope.displayBlinkSpeed = speed;
        }

        function hideElement(){
            var speed = parseInt(scope.blinkSpeed);
            element.css("visibility","hidden");
            $timeout(showElement,speed);
            scope.displayBlinkSpeed = speed;
        }

        showElement();
    },
    template: '<span ng-transclude></span>',
    replace: true
    };
});
Run Code Online (Sandbox Code Playgroud)

另外,我忘了提到{{displayBlinkSpeed}}HTML中也没有显示任何内容.我的猜测是我的指令无法与DOM通信(接收/发送)信息.不幸的是,我还没有办法让它发挥作用.我错过了/误解了什么吗?

html javascript jquery angularjs angular-directive

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