Tag: 平均堆栈

如何使用node.js中的excel4node.js以编程方式创build单元格下拉列表?

我使用了excel4node js来创build和下载excel文件。 我想dynamic地在Excel表格中创build单元格下拉列表。 即我有从B1到B10单元格的10个值,那么我需要将单元格C1到C10作为下拉列表,下拉列表应该包含从b1到b10的值。 因此用户允许使用下拉列表为c1到c10单元格select值。 如何使用excel4node js做到这一点?

如何创build一个运行的API端点?

我想知道如何使RunKit运行终点。 在RunKit的这个页面中,它会生成一个与代码关联的URL。 在浏览器中打开该URL将看到代码定义的response 。 而且,对代码的更改将会实时反映出来。 有谁知道他们如何实现这一目标? 我知道在一个平均网站上定义一个固定的api。 例如,由于以下代码,可以调用https://myexample.com/api/add/3/5 。 但是我不知道如何制作一个function可以实时更改的API。 router.get('/api/add/:a/:b', function (req, res, next) { var r = Number(req.params.a) + Number(req.params.b); res.json(r) })

nodejs将服务注入到另一个服务中

目前,我有一个控制器,它使用服务填充数组,然后计算该数组的中位数。 我想要做的是,而不是拥有控制器内的所有逻辑,我想创build一个新的服务,并在该服务内进行计算。 这是我有的控制器,它正在工作。 var RefCompanyService = require('../services/RefCompany.service') var math = require('mathjs'); _this = this exports.getMedian = async function (req, res, next) { var mxnRateList = []; var page = req.query.page ? req.query.page : 1 var limit = req.query.limit ? req.query.limit : 10; console.log(page, limit) try { var refCompanies = await RefCompanyService.getRefCompanies({}, page, limit) /**Median */ […]

MEAN应用程序的负载testing

我目前正在用MEAN stack编写一个应用程序,并将第一个版本部署到服务器。 该应用程序由一个static HTML file (以及CSS和一些图像)和一大堆JavaScript文件组成。 加载页面时会执行很多JS,包括从Angular应用程序到NodeJS服务器的多个请求。 到目前为止,我已经尝试了几种负载testing工具( Apache Benchmark , JMeter和loadtest ),但是他们只是testing服务器来对付static HTML file 。 我需要一个工具(或上述工具的选项),它至less可以运行JavaScript的init部分。 我知道这将需要至less一些小的浏览器模拟或任何其他方法来testing运行HTML文件的JS。 任何指针在正确的方向将不胜感激!

在Express中设置默认的响应标题

我正在一个运行在MEAN堆栈上的小应用程序,并且遇到了一个烦人的障碍:我的后端应用程序(Node with Express )在http://localhost:3000 ,工作正常,但是我的前端客户端应用程序Javascript与AngularJS)运行在http://localhost:8000 ,这意味着从Angular发送的请求将被接收并作出响应,但一旦到达,就会被拒绝,因为它们被解释为来自不同的来源。 我能够用相对较less的戏剧来解决这个问题,通过使我的“展示我所有的东西”的方法看起来像这样: exports.index = function(req, res) { Region.find({}, function(err, docs) { if(!err) { res.setHeader('Access-Control-Allow-Origin', 'http://localhost:8000'); res.json(200, { regions: docs }); } else { res.setHeader('Access-Control-Allow-Origin', 'http://localhost:8000'); res.json(500, { message: err }); } }); } res.setHeader('Access-Control-Allow-Origin', 'http://localhost:8000'); 行是我添加的告诉浏览器可以接受的反应,并停止打扰我; 现在的问题是,我必须将这个愚蠢的行添加到从任何地方发送的每一个响应中,并且我确信我必须错过某种方法来更改默认标题以永远包括Access-Control-Allow-Origin条目。 在一个完美的世界里,我可以根据代码被执行的环境来打开和closures,但是我完全可以在app.js中定义一个代码块,我至less可以删除一个代码块试图追踪res.setHeader 75个实例。 我认为必须有一种方法来改变隐藏在其基础之后的.json方法,但是文档并没有提供任何有关如何做到这一点的信息,更不用说它是否是一个可怕的想法。 有什么想法吗? 编辑 我认为(如所build议的那样) configuration应用程序级中间件是关键。 以下是我添加到我的app.js文件中的代码: // allow CORS: app.use(function (req, […]

错误:在Ubuntu上发布应用程序时,ENOENT,没有这样的文件或目录'/ var / www / html / views

我的nodejs应用程序文件夹结构如下所示。 Index.html文件位于views文件夹中,公用文件夹包含partials页面。 下面是index.html中的一小段代码,当节点在本地机器上运行时,它工作正常。 <section id="sidebar" ng-controller="menuController" ng-init="init()"> <% include ..\public\partials\_menubar.html %> </section> 但是,当我在服务器上运行的代码,它给了我错误。 Error: ENOENT, no such file or directory '/var/www/html/views/..\public\partials\_menubar.html' at Object.fs.openSync (fs.js:432:18) at Object.fs.readFileSync (fs.js:286:15) at includeSource (/var/www/html/node_modules/ejs/lib/ejs.js:194:17) at /var/www/html/node_modules/ejs/lib/ejs.js:528:26 at Array.forEach (native) at Object.Template.generateSource (/var/www/html/node_modules/ejs/lib/ejs.js:505:15) at Object.Template.compile (/var/www/html/node_modules/ejs/lib/ejs.js:427:12) at Object.compile (/var/www/html/node_modules/ejs/lib/ejs.js:288:16) at handleCache (/var/www/html/node_modules/ejs/lib/ejs.js:147:16) at View.exports.renderFile [as engine] (/var/www/html/node_modules/ejs/lib/ejs.js:350:14) 我曾尝试使用下面的代码,但没有成功。 app.use(express.static(path.join(__dirname, 'public')));

在MEAN堆栈中应该创buildvalidation规则的地方?

我正在使用MEAN堆栈创build一个应用程序,该堆栈有大量的表单数据条目,这些数据条目从authentication用户和匿名用户持久保存到数据库。 在堆栈中,我应该创build所有的validation规则? 他们应该在AngularJS? 但是我想我的服务器端API是安全的,所以也许他们应该在Express中,然后冒泡给AngularJS? 或者他们应该一直在MongoDB层(我将使用Mongoose,所以很容易在那里创buildvalidation)。 目前,我已经把它们传播开来,并且发现自己重复了规则。 我想避免这种情况,并在一个地方创build规则。 那么在MVW应用程序中定义validation的一般规则是什么,以及哪个层最适合他们(特别是对于MEAN应用程序)呢?

如何减lessif语句的数量

您好我自学MEAN堆栈,并有一个关于如何减less如果在我的代码检查的问题。 基本上这是由用户填写他/她的设置页面,然后点击input我们然后发送数据到服务器,所以我们可以更新mongo。 唯一的办法,我似乎得到这个工作,允许用户编辑某些领域,而不是所有是确保发送到服务器的数据不等于空,但肯定必须有一个更好的方法,然后通过运行如果每个领域的声明。 有问题的代码是这样的 //user.username = req.body.username; if ( age != null) { user.age = age; } if ( bio != null) { user.bio = bio; } if ( location != null) { user.location = location; } if ( team != null) { user.team = team; } if ( tags != null) { user.tags = […]

如何在我的项目中使用凉亭包组件

我正在使用angular度材料devise的平均堆栈应用程序。 我被困在使用'MD – datepicker'。 我正在devise一个具有出生date字段的表单,但是md-datepicker不允许select年份。 我发现一个凉亭打包机“ https://github.com/alenaksu/mdPickers ”,我试图把它添加到我的项目。 我安装了凉亭 npm安装凉亭 安装软件包, 凉亭安装mdpackages 在这个步骤之后,我得到了我的项目目录中的bower-components。 所以我的问题是我应该在哪里链接这个组件。 (我真的是新的平均堆栈)。 现在我不知道如何在我的项目中使用它。 mdpicker-bower软件包的Dir图像 我知道这个问题有点混乱,但如果有人可以帮助我,我会向队友开放。 提前致谢。

意外的标记 。 运行server.js时

我正在用MEAN堆栈编写一个Web应用程序,并且正在testing以查看我的nodejs服务器是否正在工作。 这是我的server.js: // server.js 'use strict'; // modules ================================================= const path = require('path'); const express = require('express'); const app = express(); const bodyParser = require('body-parser'); const methodOverride = require('method-override'); // configuration =========================================== // config files const db = require('./config/db'); // set our port var port = process.env.PORT || 8080; // connect to mongoDB // (uncomment […]