我单独创建了一个AngularJS应用程序和一个NodeJS应用程序,但我现在要做的就是将两者融合。将nodeJS应用程序放在AngularJS App中,或者反过来。
我知道让NodeJS应用服务的API会被AngularJS App使用会更好但是我只需要一台服务器就可以了,我认为它是可行的,因为当我制作一个AngularJS时应用程序已经有一个名为" node_modules"的文件夹。
我项目的结构现在是:
Node.js
应用程序中加载了express,mysql和我需要的内容)NodeApp.js
(包含节点代码的NodeJS应用程序)然而,当我运行app.js/index.html
时,它会抛出以下错误:"无法获得index.html",这意味着即使他们在同一个项目中, AngularJS和NodeJS无法沟通。你能帮我解决这个问题吗?如果我想在同一个Webstorm项目中创建它们,我如何在AngularJS和NodeJS之间建立链接?
提前致谢。
我在研究中发现了这一点: http://www.infragistics.com/community/blogs/dhananjay_kumar/archive/2015/02/13/how-to-use-nodejs-express-and-bower-to-create-angularjs-apps.aspx 这是我想要做的,但我不了解一切,因为使用Webstorm更容易
答案 0 :(得分:1)
您应该使用Express Generator启动一个新应用,并查看它创建的文件夹结构。
我有一个使用expressjs和angularjs构建的小应用程序,这里是文件夹结构:
要做到这一点,我必须更改视图引擎以使用.html 然后,当您访问 localhost:3000 时,服务器会呈现index.html( localhost:3000 /#/ ),它会加载角度和所有废话。 我所有的角度资源都转到/ api / yourModel。
因此,如果您访问 localhost:3000 / api / yourModel ,则表示您正在直接访问api。
对我来说这很好用,正如你所说,你把所有东西放在一起。前端和服务器在同一个"项目"说话。
答案 1 :(得分:0)
正如user1655756所建议的那样,我做的是创建一个新的nodeJS应用程序,然后注入angularJS应用程序文件夹,而不是公开。 然后正如Shaffanhoon在node.js中所建议的,我指定了我的index.html的路径,这对我有用.. 谢谢你的帮助