我在看Vue.js是Angular的替代品,到目前为止我非常喜欢它.

在Angular中,我曾为此定义一个服务,它被注入到每个需要它的控制器中.据我所知,Vue似乎并不了解"服务" struct .如何在Vue中实现这一点?

我考虑过vue-resource个,但据我所知,它只适用于http功能.由于我也使用jQuery,这已经过时了.

例子:

我有vueComponent1vueComponent2.两者都需要访问相同的REST资源.为了处理这个问题,我需要一个中央服务,这两个组件都可以用于对REST资源的请求.Angular有"服务"组件,它正是这样做的.Vue没有.

推荐答案

来自Vue.js文档.

Vue.js本身并不是一个成熟的框架——它只关注视图层.

MVC提供的服务不像MVC提供的服务.

你使用的是Browserify或Webpack之类的模块加载器吗

例如:

export default class RestResource {

  sendRequest() {
    // Use vue-resource or any other http library to send your request
  }

}

在vue组件1和2中,可以通过导入类来使用此服务.

import RestResource from './services/RestResource';

const restResourceService = new RestResource();

restResourceService.sendRequest();

Vue.js相关问答推荐

V-img不显示文件夹中的图像

如何将 cogo toast PRIVE集成到nuxt3中?

将Vite Vuejs应用部署到Apache服务器

保持页面重新加载之间的状态

从组件中检索 Shopware CMS 编辑器中的自定义实体数据

Vuetify右侧并排switch

vuetify/mdi 不显示图标

如何从mustache内的过滤器输出html

Vue:根元素内容和内容分发槽

指定一个 vue-cli vue.config.js 位置

Vue3在'vue-router'中找不到导出'createWebHistory,createRouter'

在组件的样式部分使用 Vue 变量

Vuetify 容器不会填充高度

将 Vuetify 从 1.5 升级到 2 时,Sass-loader 错误 'options has an unknown property 'indentedSyntax''

从 Axios 响应中解析 XML,推送到 Vue 数据数组

Vue 组件中的组件渲染函数中可能存在无限更新循环警告

Vuetify Jest 未知自定义元素

如何将数据属性设置为从 Vuex getter 返回的值

如何从 vue-apollo 中访问 this.$route?

mount() 仅在组件 Vue.js 上运行一次