Tag: webstorm

用于使用node.js模块完成代码的WebStorm JSDoc类声明

我想知道如何在WebStorm 11中正确使用JSDoc来标记node.js应用程序中的类和types以获得代码完成等。 例: 文件 – 答: function A(){ this.b = true; } A.prototype.doSth = function doSth() { return !this.b; } module.export = new A(); 文件B: var foo = bar(); // returns type of A 现在我想要为“foo”完成代码,所以它build议foo.b,foo.doSth,… 我尝试了很多像@class,@constructor这样的JSDoc条目,并使用@type {A}来定义类似foo /* @type {A} */ var foo = bar(); 但WebStorm不能识别typesA.它没有代码完成,也Ctrl +单击括号中的typesA说:“无法find要去的声明”。 任何想法如何正确地做到这一点?

如何让WebStorm识别类方法node.js

我正在使用带有ES6的WebStorm 11.0.3,并激活了节点语言支持。 我有一个class,例如: // File thing.js 'use strict'; module.exports = class Thing { static do(){ console.log('thing.do1'); } do(){ console.log('do'); } }; 现在我想使用这个类。 如果我在这个要求中给这个class另外一个名字,我就没有智慧。 例如,这工作: // File do1.js 'use strict'; var Thing = require('./thing'); Thing.do(); new Thing().do(); 但是这不(没有智力上的东西,没有去声明等等) // File do2.js 'use strict'; var thing = require('./thing'); thing.do(); new thing().do(); 有没有办法解决这个问题?

Grunt:Livereload不起作用

每次我尝试使用grunt watch的live reload选项时,我都会遇到这个问题。 无论使用哪个端口,我都会收到“致命错误:端口xxxx已被另一进程使用”。 我列出了所有正在使用的端口,select一个没有出现在列表中的随机数字并没有帮助:它将xxxxreplace为grunt文件中最后使用的任何端口。 我的grunt文件本身: module.exports = function (grunt) { grunt.initConfig({ pkg: grunt.file.readJSON('package.json'), watch: { options: { livereload: true }, js: { files: ['.dev/**/*.js'], tasks: ['concat', 'uglify', 'watch'], }, scss: { files: ['./dev/scss/*.scss'], tasks: ['sass', 'concat', 'watch'], options: { reload: true, livereload: false, } }, html: { files: ['./dev/**/*.html', 'watch'], tasks: ['copy', 'watch'], }, […]

在WebStorm中使用任意NodeJSunit testing框架进行debugging

我已经分叉了一个NodeJS项目,使用testing任何协议(节点轻拍)。 我正在使用WebStorm 8.0.1 IDE。 我现在想在运行unit testing时进行一步debugging。 由于在Node的世界里Tap看起来很模糊,当然在WebStorm中没有针对这个框架的运行/debuggingconfiguration。 通过使用这些设置configurationNode.js运行configuration,我能够通过IDE运行testing: 节点解释器:C:\ Program Files \ nodejs \ node.exe 节点参数:–debug-brk 工作目录:{我的项目目录} JavaScript文件:node_modules \ tap \ bin \ tap.js 应用参数:test / test – *。js 但是,使用此configuration进行debugging时,我的断点不会被打中。 另外,即使插入一个debugger; 声明不会触发rest。 有没有办法让我在WebStorm中专门运行taptesting? 如果没有,为什么你认为我的testing中的断点没有被击中?

Webstorm:debugging在ES6中编写的摩卡testing

在使用WebStorm 10进行Node.js开发时,我无法在debugging时逐步完成testing用例(用ES6编写)。 我猜测编译文件会使testing文件不同步。 想知道是否有人能够成功debugging? 这是我的test.js文件 describe('TestFlow', function () { "use strict"; it('Test Path', (done) => { console.log("Testing_1 happy path\n"); console.log("Testing_2 happy path\n"); done(); }); }); 我已经configuration了Mocha选项来使用–compilers js:babel / register 。 现在,当我尝试debugging代码时,逐步过程是不可预知的,并且不起作用。 babel编译混淆了debugging过程。 请问我是否有解决此问题的方法? 我认为debuggingES6代码是WebStrom 10中的一个function,但我没有运气

Webstorm 10 + Karma + ES6 – unit testing

首先让我从提到所有我的unit testing完美地使用gulp开始。 我试图通过Webstorm(v10)运行我的unit testing问题是,karam.conf.js指向编译的js文件,而不是原始文件…有没有办法告诉Webstorm在运行testing之前先编译文件? 这里是我的karam.conf.js :(请注意,预编译的文件位于相同的位置,但看起来像* .spec.js) module.exports = function (config) { 'use strict'; config.set({ basePath: '', frameworks: ['mocha'], files: [ 'bundledTests/test/**/*.spec.bundle.js' ], // reporters configuration reporters: ['mocha'], plugins: [ 'karma-mocha-reporter', 'karma-mocha', 'karma-phantomjs-launcher', 'karma-chrome-launcher' ], //reporters: ['progress'], port: 9876, colors: true, autoWatch: true, singleRun: false, usePolling: true, atomic_save: false, // level of logging // possible […]

如何configurationWebStorm以指向VM节点解释器

适用于WebStorm的JetBrains Vagrant插件可以很好地处理VM的启动和停止。 我的项目节点解释器在虚拟机上configuration。 在WebStorm中configuration项目设置时,只有本地节点解释器可用。 我可以ssh进入虚拟机,并像命令行一样从命令行使用节点项目,但我真的想集成IDE,否则它只是一个testing编辑器/terminal复用器,而实际上我不需要它。 有什么我失踪? 在其他的Jetbrains产品上,即PyCharm,用户可以从一个stream浪vm中selectpython解释器,但是WebStorm似乎没有这个function。

无法从testing运行器输出轻松导航到WebStorm中的相关文件

从WebStorm运行npmtesting时,我得到了很好的输出如下所示: Error: invalid input syntax for integer: "***" at Massive.DB.query (paymentweb/app/node_modules/massive/lib/runner.js:22:11) at Table.insert (paymentweb/app/node_modules/massive/lib/table.js:45:11) at Table.tryCatcher (paymentweb/app/node_modules/bluebird/js/release/util.js:16:23) at Table.ret [as insertAsync] (eval at makeNodePromisifiedEval (paymentweb/app/node_modules/bluebird/js/release/promisify.js:184:12), <anonymous>:13:39) at db.(anonymous function).findOneAsync.then.existing (paymentweb/app/src/services/paymentdb/index.js:59:22) at tryCatcher (paymentweb/app/node_modules/bluebird/js/release/util.js:16:23) 我的问题是我不能轻易从错误导航到我的项目中的文件。 通常情况下,堆栈跟踪和类似的文件名是高亮的,我可以通过点击链接打开文件。 这怎么能实现?

如何在WebStorm中使用readline-sync npm存储库?

我使用'readline-sync'依赖关系编写了下面的代码。 var readlineSync = require('readline-sync'); function main() { printMenu(); var userName = readlineSync.question('Please enter your choice:'); console.log(userName); } main(); 我从WebStorm运行这个代码,尝试使用WebStorm控制台窗口。 我得到了错误: 错误:当前环境不支持来自TTY的交互式阅读。 stty:指定输出样式时,可能不会设置模式 当我从linuxterminal运行它的代码工作没有错误。 我从错误信息中了解到'readline-sync'无法从WebStorm控制台运行。 你有什么想法如何解决它?

webstorm自动完成的require(.json)

Webstorm在为node.js模块提供自动完成function时非常智能。 不幸的是由于某种原因,如果所需的模块是一个JSON文件即 var settings = require('./settings.json); 它确实需要它,并用数据构build一个对象,但是在编辑器中没有提供自动完成function。 任何人有任何解决scheme? 谢谢。