草庐IT

time-grunt

全部标签

Javascript Promises : Chain same promise n times, 然后做其他事情

我有一个返回promise的函数,它执行一些异步操作,我们称它为functionToRepeat()。我正在尝试编写函数repeatFunction(amount),这样它将启动promise,等待完成,再次启动,等待完成,等等给定的次数.这个repeatFunction(amount)也应该是thenable,这样我就可以在它执行后链接其他东西。这是我的尝试:functionfunctionToRepeat(){letaction=newPromise(function(resolve,reject){setTimeout(function(){console.log("resolv

javascript - Grunt Live-Reload 通过 Watch

我正在尝试配置grunt以在更改时实时加载js和less/css文件。虽然grunt确实正确地“监视”并执行分配的任务,但它不会实时重新加载文件。下面是我的配置,有人看到有什么问题吗?module.exports=function(grunt){grunt.initConfig({pkg:grunt.file.readJSON("package.json"),jshint:{files:["Gruntfile.js","src/javascripts/**/*.js"],options:{globals:{jQuery:true,console:true,module:true}}},

javascript - Angular Directive(指令) : Adding ng-class directive at compile time on existing template element

长话短说,这个想法是通过不必手动添加ng-class={'has-error':'formName.inputName.$invalid'}来简化模板每一个form-group所以我想创建一个指令来生成一个字符串,该字符串将被添加到模板元素中。该字符串是一个带有表达式的ng-class属性我认为创建一个在编译阶段添加ng-class属性的快速指令就足够了,但它似乎并没有削减它。指令定义对象{restrict:'C',compile:function(tElement,tAttrs){var$elem=angular.element(tElement),formName=$elem.pa

javascript - 创建一个 Ahead-of-Time (AOT) 编译库供 Angular 应用程序使用

我有一个Angular5库,我将它公开为一个包,供其他应用从它们的node_modules使用。目前,该应用程序使用rollup和gulp进行即时(JIT)编译,并作为包导出。因此,开发人员应用程序以其JIT编译形式使用我的包。对AOT的研究让我相信,任何使用AOT编译的Angular应用程序都比浏览器上的JIT对应程序具有更高的性能。但是,作为库开发人员,我想知道如果我公开AOT编译的库,应用开发人员是否会获得任何性能优势?我使用ng-bootstrap和许多其他开源库在我的模块中创建组件并在它们之上添加自定义样式或功能。我在模块中使用的所有库是否也需要采用AOT形式,或者我可以使用

javascript - 量子对偶性 : variable is null and undefined at the same time?

考虑以下JavaScript代码(在Firefox中测试):functionf(a){if(a==undefined){alert('undefined');}if(a==null){alert('null');}}f();同时显示两个警报,表明这两个陈述都是正确的。你能给出一个合理的解释吗? 最佳答案 ==是一个“软”相等运算符。它使用类型强制将两个等效对象比较为相等。以下所有都是正确的:42=="42"0==false0==""[]==""{}=="[objectObject]"'/(?:)/'==newRegExp相反,您应该

javascript - 是否有可能在 angular 和 grunt 中有多个运行 block ?

我正在设置$httpBackend以在我们的API开发人员处理这些伪造的API路由时将其stub。问题是我必须将我所有的$httpBackend定义放在我的runblock中。结果,我的runblock将变得相当大。我想知道是否有办法将它们分成不同的文件,可能使用多个runblock,或者甚至是一些繁重的任务将它们全部压缩到一个run文件。 最佳答案 您实际上可以在Angular中创建多个运行block。只需将每个运行block分成不同的文件。DEMO一个人为的例子看起来像这样:app.jsangular.module('app',

javascript - 如何将 --harmony Node 标志添加到 grunt-express

我正在使用grunt-express进行本地开发。这是我的GruntFile.jsvarpath=require('path');module.exports=function(grunt){grunt.initConfig({pkg:grunt.file.readJSON('package.json'),uglify:{options:{banner:'/*!*/\n'}},express:{server:{options:{debug:true,server:path.resolve('app.js')}}},env:{options:{},dev:{NODE_ENV:'devel

javascript - 在加载所有任务之前不会设置 Grunt 环境变量

我正在使用npm模块gruntenv和load-grunt-config在我的项目中。gruntenv为您处理环境变量,而load-grunt-config处理,嗯,为您加载grunt配置。您可以将您的任务放入其他文件中,然后load-grunt-config会将它们打包并让grunt为您加载和使用它们。您还可以创建一个aliases.js文件,其中包含您希望将任务组合在一起的任务,一个接一个地运行。它类似于grunt.registerTask原始Gruntfile.js中的任务。我将所有grunt任务放在根文件夹下的一个单独的grunt/文件夹中,其中包含主要的Gruntfile,没

javascript - 用于开发/生产环境的备用 grunt.js 任务

我真的很希望能够拥有一个开发grunt文件并使用相同的文件作为脚本的生产版本。我已经尝试过关于SO的建议,但我的脚本在尝试调用dev/prod参数时只会失败。我相信答案是针对旧版本的grunt,或者可能是我正在使用的插件。module.exports=function(grunt){//loadallgrunttasksrequire('matchdep').filterDev('grunt-*').forEach(grunt.loadNpmTasks);grunt.initConfig({pkg:grunt.file.readJSON('package.json'),compass:

javascript - Learnyounode #6 使其模块化 : correct results AND throwing error at the same time?

我正在完成nodeschool.iolearnyounode练习#6,makeitmodular。我得到了正确的结果,但仍然有一段我不熟悉的代码出错。任何帮助都会很棒。这是结果和错误:Yoursubmissionresultscomparedtotheexpected:ACTUALEXPECTED────────────────────────────────────────────────────────────────────────────────"CHANGELOG.md"=="CHANGELOG.md""LICENCE.md"=="LICENCE.md""README.md"