我正在尝试将使用Yeoman's angular generator
模板创建的项目推送到服务器。
这是我的项目 -
这是在我的app文件夹中 -
这是node-modules文件夹。出于某种原因,Yeoman安装了几个节点模块。我没有使用所有这些。
列表还在继续。这只是node-modules
文件夹中的一小部分。
为了推送到服务器,我正在使用grunt build
。这会生成一个dist
文件夹,其中包含以下内容 -
但是当我导航到我的观看时(例如reset-password
),我收到一个错误,指出此文件不可用。
我猜这是因为dist
文件夹没有views
文件夹的app
文件夹。
我的最终要求是我想将此项目推送到服务器,以便任何人都可以访问它。我不想推送所有节点模块,因为我没有使用它们。
更新 -
这是dist / scripts / -
中的内容在script.2a4ac124.js
文件中,我的所有视图都被引用,但是当我尝试导航到 - file:///Users/proj/Documents/sso/dist/reset-password
时,我收到了一个找不到文件的错误,但是当我导航到file:/// Users / proj / Documents / sso / dist / index.html#/我看到index
页面。
答案 0 :(得分:2)
安装节点模块是正常的 - 它会安装开发依赖项,这些依赖项将用于Yeoman创建的grunt任务中。这么多的原因是因为dev依赖项有自己的依赖关系需要解决。
重置密码导航错误很可能是一些构建错误,但很难从描述中分辨出来。 Yeoman将视图文件转换为angularJS templateCache并将它们放入concat / uglified js文件(通常是app-.js文件)。首先看看他们是否在那里。如果他们不是,则视图文件无法构建。如果他们在那里,可能是模板被错误地缓存了,或者它也可能是完全不同的东西。
要部署应用程序,只需将dist文件夹的内容复制到您部署的任何位置即可。您不需要node_modules,因为它们仅用于执行dev。任务。
此外,
您的屏幕截图显示了应用根目录下的SignUpCtrl.js文件。 Yeoman脚手架,无论您使用哪种脚手架,通常都没有设计为在app根目录下有脚本文件。首先尝试将其放回脚本文件中。