在开发中如何将Vue.js应用程序与Drupal做一个集成?将Vue.js应用程序与Drupal做一个集成的方法!

2021-09-17 15:10:39 浏览数 (4)

自 2000 年代初以来,互联网内容在互联网上的流行迅速增长,已将世界带到了另一种技术的门口:内容管理系统。使用 JavaScript,前端界面有很多选择。现在,我们确实拥有像 Drupal 这样充足的技术来构建这些平台,对动态和交互式体验不断增长的需求使人们关注其他能够满足这些期望的技术。 

这就是 vue.js,一个以支持丰富的交互式应用程序开发而闻名的 JavaScript 框架。Vue.js 是一种流行的 JavaScript 框架,用于创建交互式应用程序。您知道它通过简单灵活的 API 提供数据反应组件吗?此外,您可以将其用作库以向现有网站添加交互元素/块。如果您希望显着提升用户体验,它现在已成为公认的首选资源。 

因此,如果您在市场上寻求此类解决方案,并希望在您的 Drupal CMS 上更上一层楼,这里有一些将它们与 vue.js 应用程序集成的技巧。

    1.使用自定义模块:将任何 Vue.js 应用程序与 Drupal 集成的主要也是最基本的步骤之一就是创建自定义模块。但这究竟意味着什么呢?那么,开发人员需要为 Vue.js 应用程序开发一个新的自定义模块。看,这个依赖项所做的就是添加通用的 Vue 库。但这还不是全部。开发人员还可以将上述这些通用 Vue 库直接添加到他们在此过程开始时创建的自定义模块中。话虽如此,我们必须提到将它们放在另一个模块中会是一个更好的主意,因为这样开发人员也可以在以后重用它们。

Vue.js 组件:

name: Module Name

type: module

description: 'Provides functionality for ...'

package: Project Name

core_version_requirement: ^8.8 || ^9

dependencies:

  - projectname_system:projectname_system

version: 1.0

    2.利用 Vue CLI:Vue CLI 不仅有助于构建新的 Vue 应用程序,而且还使开发人员能够在需要大量设置的情况下构建所述应用程序。它通过构建目录结构和生成应用程序编译设置等来实现。建议将应用程序放在目标模块的子目录中;例如,模块名称应用程序

Vue.js 组件:

{

  "name": "module-name-app",

  "version": "0.1.0",

  "private": true,

  “scripts”: {

    "serve": "vue-cli-service serve",

    "build": "vue-cli-service build --target lib --formats umd-min --name module_name_app src/main.js",

    "lint": "vue-cli-service lint",

    "lint-no-fix": "vue-cli-service lint --no-fix --max-warnings 0",

    "dev": "vue-cli-service build --target lib --formats umd-min --name module_name_app src/main.js --watch"

  },

...

}

    3.在块中集成应用程序库:块和段落的美妙之处在于它们使开发人员能够将内容放置在应用程序的编辑器可访问部分中,并仅集成必要的资产,所述块或段落出现在页。您可以通过自定义块的构建方法执行此类集成,并将相关库添加到返回的渲染数组中。

Vue.js 组件:

public function build() {

  ...

  return [

    '#theme' => 'module_name_block',

    ...

    '#attached' => [

      'library' => 'module_name/module-name-app',

    ],

    ...

  ];

}

世界各地无数专家一致认为,将 Vue.js 用于自己的Drupal 网站开发项目无疑是一个好主意。毕竟,它不仅是一个对开发人员相当友好的框架,而且非常敏捷,带来了壮观的生态系统,并提供了无数其他好处的世界。那么,您所需要的只是确保您牢记行业最佳实践和技巧,例如上面列出的那些,以便快速轻松地将 vue.js 应用程序与 Drupal 集成。


0 人点赞