ruby-on-rails – Rails 5.1 Vuejs Webpacker:Normal Rails MVC vs Rails API

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – Rails 5.1 Vuejs Webpacker:Normal Rails MVC vs Rails API前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用Rails 5.1和Vue.js开始一个新的应用程序,内置的Webpacker Vue.js包(通过–webpack = vue标志生成).

我正在努力了解专业人士使用普通的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应用程序的问题”.

我想要注意的是,我意识到答案会有点风格偏好.有些人可能比较喜欢一个.

两者都有效,但我想考虑易用性,兼容性以及以另一种方式做到这一点的权衡.

谢谢.

解决方法

要在API –api模式下使用Rails,可以在此处找到有关该文档的官方文档:

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/

请让我知道你的发现.

猜你在找的Ruby相关文章