Tag: angularjs

AngularJS持续部署工具

我一直在尝试使用Codeship和Heroku来连续部署我正在编写的AngularJS应用程序。 该应用程序使用Yeoman创build,并使用凉亭和咕噜声。 起初,我认为这看起来像一个非常好的设置Codeship是免费使用,我很快就能够configuration这个来build立我的AngularJS项目,并提供了在构build后添加部署步骤的能力。 甚至有很多PaaS供应商可供select(Heroku,S3,Google App Engine等)。 但是,我似乎已经成为一个让Heroku上运行的应用程序卡住了。 问题出在这样的事实,即所有的文档都build议我从.gitignore删除/distpath,以便将这个目录发布到Heroku后期构build中。 这主要是从本地机器上谈到向Heroku发布的文档,但是我认为这是所有Codeship正在引擎盖下进行的。 我不想这样做,因为我不相信我应该检查生成输出到源代码pipe理。 /dist文件夹被添加到.gitignore有一个很好的理由。 而且,这种有点让人失望的CI服务器,不如从我的机器上推出最新的版本。 经过一些更多的挖掘后,我发现我可以添加一个postinstall步骤到我的packages.json文件中,例如bower install && grunt build ,它将重新运行Heroku上的构build,从而重新填充所有的bower依赖项(他们想要的其他东西检查源代码pipe理!)和dist目录。 给了这个尝试后,显然我需要在packages.json添加bower和grunt作为依赖关系,这意味着将它们从devDependencies移动到它们应该属于的地方! 所以我现在好像被卡住了 我想要做的就是发布我的构build文物( /dist )依赖项( /bower_components )和将运行该站点的server.js文件。 有没有人知道如何用Heroku和Codeship实现这一点? 或者有人使用不同的工具有任何成功。 我正在寻找一些免费的,我愿意接受,它不会生产稳定(不会扩展到多个服务器等),但现在这是好的,因为我想要做的就是不断地部署应用程序内部testing,并能够与我的团队的非技术成员分享输出,所以我们可以讨论我们想优先考虑的function等。 任何build议将不胜感激。 谢谢

AngularJS强制Firefox / Safari下载文件,而不是在浏览器中打开

我有一个PDF文件,可以在除Firefox / Safari以外的所有浏览器中下载。 它会在浏览器窗口中打开它,而不是下载该文件。 我的网站运行在node.js之上,并在Azure中托pipe。 用户下载的文件来自Azure blob存储,所以我怀疑这可能是一个CORS问题。 下面是我的客户端代码: <a href="{{fileURL}}" class="btn btn-default" download="myfile.pdf">Download File</a> 这里是服务器端代码: $scope.fileURL = 'https://myblob.blob.core.windows.net/8282020/myfile.pdf'; 更新:我可以通过在下面的帮助中设置Azure中的blob属性来添加内容处置,并且将处置显示为“附件”,但是在FireFox / Safari中它仍然在浏览器中打开。 这是否可能被阻止,因为Azure Blob存储可能被视为CORS? 更新2:添加以下内容到我的HTML标签似乎在FireFox(而不是Safari),这是正确的方式来处理浏览器 type="application/octet-stream" 更新3:通过节点设置内容configuration和内容types似乎正在工作。 我必须问,这是正确的方法吗? blobSvc.setBlobProperties(containerName, filename, { contentDisposition: 'attachment', contentType: 'application/octet-stream' }, function (error, result, response) { // result code here…. })

Sails.js + Passport.js获取当前login的用户

我有一个我正在使用的sails应用程序,我正在使用passport.js进行用户身份validation。 我有login工作,以及保护我的网页,所有系统的政策。 在我的一个页面上,用户正在input信息,所以我需要获取当前login用户的ID。 我为此苦苦挣扎,但最终还是采用了一条路线 在控制器中 $scope.$on('sailsSocket:connect', function(ev, data) { sailsSocket.get( '/get_user', {}, function(response) { $scope.team_id = response.user; sailsSocket.get( '/status_update?sort=createdAt%20ASC&team_id='+$scope.team_id, {}, function(response) { $scope.updates = response; $log.debug('sailsSocket::/status_update', response); }); }); }); 和路由callback get_user: function(req, res) { res.json({user:req.session.passport.user}); }, 这似乎工作正常,但我有几个问题。 a)这是正确的方法吗? 通过路线将这些信息提供给控制器? b)嵌套套接字调用就像这个好习惯? 我是新来的这个堆栈,仍然感觉我通过它的方式,所以任何反馈,非常感激。

未捕获的ReferenceError:未定义angular度(使用testem)

在2个文件的第1行中find错误: – controllers.js – app.js 下面连同html一起附上。 当我启动本地服务器时,应用程序出现,但是input我的详细信息后,点击注册button无法login或注册。 这是404错误? 我也尝试将这两行添加到index.html文件(我认为是一些项目,我没有定义),但没有工作。 index.html文件 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="initial-scale=1, maximum-scale=1, user-scalable=no, width=device-width"> <title></title> <link href="lib/ionic/css/ionic.css" rel="stylesheet"> <link href="css/style.css" rel="stylesheet"> *<!– ionic/angularjs js –>* <script src="lib/ionic/js/ionic.bundle.js"></script> <script src="https://cdn.firebase.com/v0/firebase.js"></script> <!– firebase –> <script src="https://cdn.firebase.com/libs/angularfire/0.5.0/angularfire.min.js"></script> <!– angularfire –> <script src="https://cdn.firebase.com/v0/firebase-simple-login.js"></script> <!– firebase-simple-login –> *<!– cordova script (this will […]

Angular 2 issue:typings:command not found

所以这可能会成为一个非常基本的问题,但它已经困扰了我好几天,实际上并没有find解决办法。 我正在使用npm从命令行安装types代码,它看起来运行良好,但是之后我input了任何input命令,它说这个命令不存在! 它是这样的: Kevyns-MacBook-Pro:~ kevynquiros$ sudo npm install typings –global Password: /Users/kevynquiros/npm/bin/typings -> /Users/kevynquiros/npm/lib/node_modules/typings/dist/bin.js typings@1.0.4 /Users/kevynquiros/npm/lib/node_modules/typings ├── listify@1.0.0 ├── xtend@4.0.1 ├── wordwrap@1.0.0 ├── archy@1.0.0 ├── minimist@1.2.0 ├── any-promise@1.3.0 ├── bluebird@3.4.0 ├── chalk@1.1.3 (supports-color@2.0.0, escape-string-regexp@1.0.5, ansi-styles@2.2.1, has-ansi@2.0.0, strip-ansi@3.0.1) ├── columnify@1.5.4 (strip-ansi@3.0.1, wcwidth@1.0.1) ├── update-notifier@0.7.0 (is-npm@1.0.0, xdg-basedir@2.0.0, semver-diff@2.1.0, ansi-align@1.0.0, boxen@0.5.1, configstore@2.0.0, latest-version@2.0.0) └── typings-core@1.0.1 (array-uniq@1.0.2, thenify@3.2.0, zip-object@0.1.0, […]

将客户端Json下载为CSV

我使用angularJS前端框架和nodejs / express作为后端服务器来发送和接收JSON。 后端发送一个大的JSON对象到前端,我想知道如果我可以从前端以CSV格式下载JSON对象。 数据以angular色控制器中的作用域variables$scope.data存储为json。 然后,我将数据转换为variables$scope.CSVdata中的CSV格式的string。 如何从客户端浏览器下载CSV数据? 我知道nodejs可以设置为以CSV格式发送文件,但是将后端保持干净的JSON API是很好的。

模块没有在业力中定义

我想在WebStorm 7中使用业力运行mySpec.js。当我运行业力,业力服务器启动我的浏览器,但在WebStorm我面临这个错误: 这是我得到的错误 ReferenceError:模块没有在null处定义。 (C:/Users/Babar/Desktop/angular/test/basic/mySpec.js:2:16)在C:/Users/Babar/Desktop/angular/test/basic/mySpec.js:1:1过程完成退出代码0 这里是我的configuration文件: // Karma configuration // Generated on Thu Nov 21 2013 03:05:08 GMT-0800 (Pacific Standard Time) module.exports = function (config) { config.set({ // base path, that will be used to resolve files and exclude basePath: '', // frameworks to use frameworks: ['jasmine'], // list of files / patterns to load […]

用于在angularjs和node.js之间共享库的模式

如何在angularjs和node.js之间共享一个库? 例如,一个angularjs服务通常是可重用的一段代码。 我们以一个URL库为例(挑选并构造URL)。 相同的库应该可以在node.js中使用。 我的约束是我想共享库代码,但我不想限制自己在浏览器端的任何加载器库。 所以,如果我需要在浏览器中使用RequireJS,我需要禁用任何加载部分,以便可以在其他地方进行控制。 那么如何分享代码?

iisnode处理请求时遇到错误

我试图检查angularjs应用程序与服务器端编写节点js,这是我得到的错误,当我通过webmatrix iisnode处理请求时遇到错误。 HRESULT: 0x2 HTTP status: 500 HTTP reason: Internal Server Error 您正在接收此HTTP 200响应,因为system.webServer/iisnode/@devErrorsEnabledconfiguration设置为“true”。 除了node.exe进程的stdout和stderr的日志之外,还可以考虑使用debugging和ETW跟踪来进一步诊断问题。 node.exe进程没有向stderr写入任何信息,或者iisnode无法捕获这些信息。 频繁的原因是iisnode模块无法创build日志文件来捕获node.exe的stdout和stderr输出。 请检查运行node.js应用程序的IIS应用程序池的标识是否具有对node.js应用程序所在的服务器上的目录的读写权限。 或者,您可以通过将web.config的system.webServer/iisnode/@loggingEnabled元素设置为“false”来禁用日志logging。 有人知道如何解决它?

在Angular控制器上获取EJS数据

我试图从我的节点服务器使用ejs传递数据到我的angular度控制器,以便我可以在控制器加载时使用它(对Angular或UI路由器不感兴趣,您可以parsing)。 节点服务器(使用快递): app.get('/', function(req, res) { res.render('index', { names: ["Daniel", "Sarah", "Peter"] }); }); angular度控制器: .controller('NamesController', function ($scope) { var info = <%= names %>; }); 这样做会给我以下错误: Uncaught SyntaxError: Unexpected token < 如果这是不可能的,我很乐意听到关于如何在我的页面上预加载数据的build议。