Articles of angularjs

AngularJS上传文件并发送给数据库

我一直试图让ngFileUpload工作,以便我可以上传图像,并将它们发送到DB – 在我的情况下,一个mongoLab数据库接受JSON对象,可以用这样的语法POST : $http.post('myMongoName/myDb/myCollection/myTable', {'key': 'value'}) 相当简单。 然而,我很困惑如何发送使用ngFileUpload上传到数据库的图像。 我在ngFileUpload的文档页面上使用了熟悉的语法: $scope.upload = function (files) { if (files && files.length) { for (var i = 0; i < files.length; i++) { var file = files[i]; console.log(file); Upload.upload({ url: myMongoLabURL, fields: {'sup': 'sup'}, file: file }) }).success(function (data, status, headers, config) { console.log('file ' + config.file.name + […]

Angular 2.0深度链接不起作用。 地址栏也一样

一切工作正常,当我build立和导航应用程序中的链接,但在地址栏中键入不! 最终,我希望能够通过电子邮件发送链接到特定的应用程序页面/path,我不知道如何实现。 我遵循了angular度路由器指南文档 。 我正确地认为… 我使用NodeJS(与快递),并在服务器中,我已经redirect到应用程序根的所有stream量。 app.get("*", function(req, res) { console.error("in get *") res.redirect("/"); }); 在我的index.html中我已经设置了基地 <base href="/"> 我有我的客户端path/path设置如下 const appRoutes: Routes = [ { path: 'vendor/registration', component: VendorRegistrationComponent }, { path: 'vendors', component: VendorListComponent }, { path: '', redirectTo: 'vendor/registration', pathMatch: 'full' }, { path: '**', component: PageNotFoundComponent } ]; 如果我在浏览器地址栏中键入http://localhost:8080/vendors ,则可以访问http://localhost:8080/vendor/registration ,这是有道理的,因为这是服务器告诉浏览器redirect到的地方。 那么我应该如何深入链接到我的应用程序? […]

Angular Ui-Router在使用node.js时不是路由

我正在使用angular度ui路由器。 路由器似乎在主页index.html上完美工作。 但是任何其他导航不起作用。 这是我的stateproviderangular: var app = angular.module('myApp', ['ui.router']); app.config(function($stateProvider, $urlRouterProvider) { $urlRouterProvider.otherwise("/"); $stateProvider .state("home", { url: "/", templateUrl: "../partials/home/index.html" }) .state("login", { url:"/login", templateUrl: "../partials/account/login.html" }) .state("register", { url: "/register", templateUrl: "../partials/account/register.html" }) .state("values", { url: "/values", templateUrl: "../partials/test/values.html" }) ; }); HTML在我的主index.html: <!–Content –> <div class="container"> <div ui-view></div> </div> <!– END Content –> […]

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 […]