我正在努力了解专业人士使用普通的Rails MVC应用程序与Rails API应用程序(生成带有–api标志的Rails应用程序)的缺点.
$rails new someapp --webpack=vue vs. $rails new someapp --api --webpack=vue
鉴于自2015年以来Rails API已经合并到核心这一事实,并且通过Webpacker gem内置的Webpack是全新的(Rails 5.1,2017),那么构建Rails应用程序的最佳方式是什么呢?是Vuejs?或者,主要是Vuejs?
坚持使用Webpacker Vue的常规Rails,或使用Webpacker Vue的Rails API?有什么权衡?
这个答案中的一部分将简单地归结为关于全栈MVC应用程序与使用API的SPA应用程序的对话.但是,我是否应该考虑任何特定的Rails Way Vue.js组件工作流程,除了“这是一个完整的MVC应用程序与SPA应用程序的问题”.
我想要注意的是,我意识到答案会有点风格偏好.有些人可能比较喜欢一个.
两者都有效,但我想考虑易用性,兼容性以及以另一种方式做到这一点的权衡.
谢谢.
@R_404_323@
http://guides.rubyonrails.org/api_app.html
这会设置一个JSON API,因此没有视图层或任何中间件.
使用命令–webpack = vue时,您将获得视图层.在GoRails中可以找到一个很好的例子,说明如何使用它:
https://gorails.com/episodes/tagged/VueJS(使用VueJS嵌套表格)
您将看到的是,您可以在rails视图目录中分布多个SPA.
我个人会选择分离两个代码库.这意味着一个Rails 5 API,然后弄清楚VueJS如何与它进行通信,以便一切正常.
这里描述了设置经过良好测试的可靠Rails 5 API:
http://aalvarez.me/blog/posts/testing-a-rails-api-with-rspec.html
同样出色并且重点:
https://paweljw.github.io/2017/07/rails-5.1-api-with-vue.js-frontend-part-0-stack-choices/
请让我知道你的发现.