CN112083966B - 一种加载远程vue组件的方法 - Google Patents

一种加载远程vue组件的方法 Download PDF

Info

Publication number
CN112083966B
CN112083966B CN202010819181.6A CN202010819181A CN112083966B CN 112083966 B CN112083966 B CN 112083966B CN 202010819181 A CN202010819181 A CN 202010819181A CN 112083966 B CN112083966 B CN 112083966B
Authority
CN
China
Prior art keywords
vue
component
remote
content
routing module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010819181.6A
Other languages
English (en)
Other versions
CN112083966A (zh
Inventor
许勇进
宋录文
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Arcvideo Technology Co ltd
Original Assignee
Hangzhou Arcvideo Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou Arcvideo Technology Co ltd filed Critical Hangzhou Arcvideo Technology Co ltd
Priority to CN202010819181.6A priority Critical patent/CN112083966B/zh
Publication of CN112083966A publication Critical patent/CN112083966A/zh
Application granted granted Critical
Publication of CN112083966B publication Critical patent/CN112083966B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • G06F9/44526Plug-ins; Add-ons

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Devices For Executing Special Programs (AREA)

Abstract

本发明公开了一种加载远程vue组件的方法。它具体包括如下步骤:(1)通过vue主框架请求路由模块,路由模块调用远程组件解析模块;(2)远程组件解析模块解析远程组件的http地址,根据http地址规则访问远程组件服务来请求远程组件,若请求失败,返回默认的错误页面到步骤(1)中;若请求成功,创建新的html文档且插入远程组件片段;(3)根据vue单文件组件规范从html文档中提取script、template、style并初始为vue组件;(4)将vue组件动态编译返回到步骤(1)中并拼接到vue主框架中。本发明的有益效果是:使得vue主框架通过路由模块能够加载远程的vue组件,从而解决了vue不能加载远程vue组件的缺陷。

Description

一种加载远程vue组件的方法
技术领域
本发明涉及前端vue远程组件相关技术领域,尤其是指一种加载远程vue组件的方法。
背景技术
目前vue上手简单、灵活易用、便以维护,但是在应用开发中,vue其特性不支持加载远程单文件组件,使我们的平台化开发过程中时不能将子应用的vue组件封装在它自己的服务中,因此为了能够使应用能够封装属于它自己的vue组件,通过http访问加载远程vue组件变的非常迫切。
发明内容
本发明是为了克服现有技术中存在上述的不足,提供了一种解决vue不能加载远程vue组件的加载远程vue组件的方法。
为了实现上述目的,本发明采用以下技术方案:
一种加载远程vue组件的方法,具体包括如下步骤:
(1)通过vue主框架请求路由模块,路由模块调用远程组件解析模块;
(2)远程组件解析模块解析远程组件的http地址,根据http地址规则访问远程组件服务来请求远程组件,若请求失败,返回默认的错误页面到步骤(1)中;若请求成功,创建新的html文档且插入远程组件片段;
(3)根据vue官方约定的单文件组件规范,通过远程组件解析模块中的解析器分别对插入的片段进行script、template、style内容分析;如果分析的内容合法,将进一步对script、template、style的内容通过解析器进行解析;如果分析的内容不合法,则返回错误提示到步骤(1)中;
(4)解析完成后,将会对解析的内容进行vue可识别化转译,通过vue运行时编译的特性将转译后的内容织入到vue主框架中。
通过上述方法的设计使得vue主框架通过路由模块能够加载远程的vue组件,从而解决了vue不能加载远程vue组件的缺陷。
作为优选,所述的vue主框架是利用vue运行时编译特性将远程组件织入到该主框架中,用于渲染显示远程组件;所述的路由模块是根据客户端传入的路由,跳转到指定的远程服务路由路径,将远程服务路由路径传递到远程组件解析模块;所述的远程组件解析模块用于解析远程组件的http地址以及远程组件;所述的远程组件服务指的是根据vue单文件组件规范提供远程组件,其中一个单文件组件包含三个部分,分别是<template>…</template>、<script>…</script>、<style>…</style>,Template中的内容是具体的页面内容,script中的内容是javascript执行脚本,style中的内容是css样式表。
作为优选,在步骤(2)中,若请求失败,返回默认的错误页面到步骤(1)的vue主框架中,并通过vue主框架给路由模块。
作为优选,在步骤(3)中,如果分析的内容不合法,则返回错误提示到步骤(1)的vue主框架中,并通过vue主框架给路由模块。
作为优选,在步骤(4)中,通过vue运行时编译的特性将转译后的内容织入到vue主框架中初始化为vue组件后,将该vue组件设给路由模块,让路由模块通过关系映射数据结构对应到最开始的请求路由,从而使得路由模块真正跳转到该vue组件。
本发明的有益效果是:使得vue主框架通过路由模块能够加载远程的vue组件,从而解决了vue不能加载远程vue组件的缺陷。
附图说明
图1是本发明的方法流程图。
具体实施方式
下面结合附图和具体实施方式对本发明做进一步的描述。
如图1所述的实施例中,一种加载远程vue组件的方法,包括vue主框架、路由模块、远程组件解析模块以及远程组件服务,其中vue主框架是利用vue运行时编译特性将远程组件织入到该主框架中,用于渲染显示远程组件;路由模块是根据客户端传入的路由,跳转到指定的远程服务路由路径,将远程服务路由路径传递到远程组件解析模块;远程组件解析模块用于解析远程组件的http地址以及远程组件;远程组件服务指的是根据vue单文件组件规范提供远程组件,其中一个单文件组件包含三个部分,分别是<template>…</template>、<script>…</script>、<style>…</style>,Template中的内容是具体的页面内容,script中的内容是javascript执行脚本,style中的内容是css样式表,具体包括如下步骤:
(1)通过vue主框架请求路由模块,路由模块调用远程组件解析模块;
(2)远程组件解析模块解析远程组件的http地址,根据http地址规则访问远程组件服务来请求远程组件,若请求失败,返回默认的错误页面到步骤(1)的vue主框架中,并通过vue主框架给路由模块;若请求成功,创建新的html文档且插入远程组件片段;
(3)根据vue官方约定的单文件组件规范,通过远程组件解析模块中的解析器分别对插入的片段进行script、template、style内容分析;如果分析的内容合法,将进一步对script、template、style的内容通过解析器进行解析;如果分析的内容不合法,则返回错误提示到步骤(1)的vue主框架中,并通过vue主框架给路由模块;
(4)解析完成后,将会对解析的内容进行vue可识别化转译,通过vue运行时编译的特性将转译后的内容织入到vue主框架中,并将其初始化为vue组件后,将该vue组件设给路由模块,让路由模块通过关系映射数据结构对应到最开始的请求路由,从而使得路由模块真正跳转到该vue组件。
这样设计使得vue主框架通过路由模块能够加载远程的vue组件,从而解决了vue不能加载远程vue组件的缺陷。

Claims (4)

1.一种加载远程vue组件的方法,其特征是,具体包括如下步骤:
(1)通过vue主框架请求路由模块,路由模块调用远程组件解析模块;
(2)远程组件解析模块解析远程组件的http地址,根据http地址规则访问远程组件服务来请求远程组件,若请求失败,返回默认的错误页面到步骤(1)中;若请求成功,创建新的html文档且插入远程组件片段;
(3)根据vue官方约定的单文件组件规范,通过远程组件解析模块中的解析器分别对插入的片段进行script、template、style内容分析;如果分析的内容合法,将进一步对script、template、style的内容通过解析器进行解析;如果分析的内容不合法,则返回错误提示到步骤(1)中;
(4)解析完成后,将会对解析的内容进行vue可识别化转译,通过vue运行时编译的特性将转译后的内容织入到vue主框架中;通过vue运行时编译的特性将转译后的内容织入到vue主框架中初始化为vue组件后,将该vue组件设给路由模块,让路由模块通过关系映射数据结构对应到最开始的请求路由,从而使得路由模块真正跳转到该vue组件;
其中,所述的vue主框架是利用vue运行时编译特性将远程组件织入到该主框架中,用于渲染显示远程组件;所述的路由模块是根据客户端传入的路由,跳转到指定的远程服务路由路径,将远程服务路由路径传递到远程组件解析模块;所述的远程组件解析模块用于解析远程组件的http地址以及远程组件;所述的远程组件服务指的是根据vue单文件组件规范提供远程组件,其中一个单文件组件包含三个部分,分别是<template>…</template>、<script>…</script>、<style>…</style>,Template中的内容是具体的页面内容,script中的内容是javascript执行脚本,style中的内容是css样式表。
2.根据权利要求1所述的一种加载远程vue组件的方法,其特征是,在步骤(2)中,若请求失败,返回默认的错误页面到步骤(1)的vue主框架中,并通过vue主框架给路由模块。
3.根据权利要求1所述的一种加载远程vue组件的方法,其特征是,在步骤(3)中,如果分析的内容不合法,则返回错误提示到步骤(1)的vue主框架中,并通过vue主框架给路由模块。
4.根据权利要求1 所述的一种加载远程vue组件的方法,其特征是,在步骤(4)中,通过vue运行时编译的特性将转译后的内容织入到vue主框架中初始化为vue组件后,将该vue组件设给路由模块,让路由模块通过关系映射数据结构对应到最开始的请求路由,从而使得路由模块真正跳转到该vue组件。
CN202010819181.6A 2020-08-14 2020-08-14 一种加载远程vue组件的方法 Active CN112083966B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010819181.6A CN112083966B (zh) 2020-08-14 2020-08-14 一种加载远程vue组件的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010819181.6A CN112083966B (zh) 2020-08-14 2020-08-14 一种加载远程vue组件的方法

Publications (2)

Publication Number Publication Date
CN112083966A CN112083966A (zh) 2020-12-15
CN112083966B true CN112083966B (zh) 2024-02-27

Family

ID=73728293

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010819181.6A Active CN112083966B (zh) 2020-08-14 2020-08-14 一种加载远程vue组件的方法

Country Status (1)

Country Link
CN (1) CN112083966B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112579242B (zh) * 2020-12-23 2023-08-11 艾普科创(北京)控股有限公司 一种页面跳转关系分析方法、装置、设备及存储介质
CN114625436B (zh) * 2022-03-04 2024-06-04 中国—东盟信息港股份有限公司 一种前端应用容器化的远程模块加载方法

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103314384A (zh) * 2010-12-18 2013-09-18 高通股份有限公司 用于管理装置特定内容的方法和系统
CN104182547A (zh) * 2014-09-10 2014-12-03 北京浩瀚深度信息技术股份有限公司 一种服务器优化页面渲染的方法及web cache服务器
CN107562425A (zh) * 2017-08-07 2018-01-09 上海斐讯数据通信技术有限公司 基于Hybrid应用的单页面应用创建方法及装置
CN107766532A (zh) * 2017-10-27 2018-03-06 深圳市行云易通科技有限公司 一种前端Node.js自动化正静态方法
CN109445323A (zh) * 2018-10-11 2019-03-08 上海求本信息技术有限公司 一种基于web的分布式智能测控软件平台设计方法
CN109766503A (zh) * 2018-12-28 2019-05-17 深圳联友科技有限公司 一种模块化的前端框架构建方法及装置
US10375237B1 (en) * 2016-09-12 2019-08-06 Verint Americas Inc. Virtual communications assessment system in a multimedia environment
CN110362312A (zh) * 2019-06-27 2019-10-22 绿漫科技有限公司 一种适用于多种框架的语法转换编译系统及方法
CN110635935A (zh) * 2018-06-25 2019-12-31 丛林网络公司 为用户接口的相应服务接口使用多个evpn路由
CN110968317A (zh) * 2019-12-02 2020-04-07 广州鲁邦通物联网科技有限公司 一种通过UCI/USI配置文件自动生成vue页面组件的方法和系统
CN111158818A (zh) * 2019-12-24 2020-05-15 中国建设银行股份有限公司 一种页面渲染方法和装置
CN111459541A (zh) * 2020-04-09 2020-07-28 武汉联影医疗科技有限公司 应用程序的打包方法、装置、计算机设备和存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10466975B2 (en) * 2015-10-23 2019-11-05 Oracle International Corporation Execution of parameterized classes on legacy virtual machines to generate instantiation metadata

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103314384A (zh) * 2010-12-18 2013-09-18 高通股份有限公司 用于管理装置特定内容的方法和系统
CN104182547A (zh) * 2014-09-10 2014-12-03 北京浩瀚深度信息技术股份有限公司 一种服务器优化页面渲染的方法及web cache服务器
US10375237B1 (en) * 2016-09-12 2019-08-06 Verint Americas Inc. Virtual communications assessment system in a multimedia environment
CN107562425A (zh) * 2017-08-07 2018-01-09 上海斐讯数据通信技术有限公司 基于Hybrid应用的单页面应用创建方法及装置
CN107766532A (zh) * 2017-10-27 2018-03-06 深圳市行云易通科技有限公司 一种前端Node.js自动化正静态方法
CN110635935A (zh) * 2018-06-25 2019-12-31 丛林网络公司 为用户接口的相应服务接口使用多个evpn路由
CN109445323A (zh) * 2018-10-11 2019-03-08 上海求本信息技术有限公司 一种基于web的分布式智能测控软件平台设计方法
CN109766503A (zh) * 2018-12-28 2019-05-17 深圳联友科技有限公司 一种模块化的前端框架构建方法及装置
CN110362312A (zh) * 2019-06-27 2019-10-22 绿漫科技有限公司 一种适用于多种框架的语法转换编译系统及方法
CN110968317A (zh) * 2019-12-02 2020-04-07 广州鲁邦通物联网科技有限公司 一种通过UCI/USI配置文件自动生成vue页面组件的方法和系统
CN111158818A (zh) * 2019-12-24 2020-05-15 中国建设银行股份有限公司 一种页面渲染方法和装置
CN111459541A (zh) * 2020-04-09 2020-07-28 武汉联影医疗科技有限公司 应用程序的打包方法、装置、计算机设备和存储介质

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
"灌溉控制柜远程运维云业务系统的设计及关键技术研究";张凌云;《中国优秀硕士学位论文全文数据库 (农业科技辑)》;第D044-98页 *
"EFL平台的远程组件调用技术研究与实现";朱林;《中国优秀硕士学位论文全文数据库 (信息科技辑)》;第I138-99页 *
基于Vue.js构建单页面GIS应用的方法研究;邓雯婷;;科技创新与应用(第14期);第11-13页 *

Also Published As

Publication number Publication date
CN112083966A (zh) 2020-12-15

Similar Documents

Publication Publication Date Title
CN112083966B (zh) 一种加载远程vue组件的方法
US6990653B1 (en) Server-side code generation from a dynamic web page content file
US5966535A (en) Method and apparatus for generating program code for world wide web service applications
US9038032B2 (en) Symbolic execution and automatic test case generation for JavaScript programs
KR100583517B1 (ko) 소프트웨어 객체와 구조화 언어 요소 기반 문서간의 매핑시스템 및 방법
US7937692B2 (en) Methods and systems for complete static analysis of software for building a system
US20150301811A1 (en) Method and apparatus for testing browser compatibility
US20130205282A1 (en) Transferring program execution from compiled code to interpreted code
US8615750B1 (en) Optimizing application compiling
US20050223084A1 (en) Dynamic web content unfolding in wireless information gateways
US20080209395A1 (en) Automatic code replacement
US20150143348A1 (en) Hybrid dynamic code compiling device, method, and service system thereof
CN111831384B (zh) 语言切换方法和装置、设备及存储介质
CN108595468A (zh) 一种网页数据的获取方法、装置、服务器、终端和系统
CN113031932B (zh) 项目开发方法、装置、电子设备及存储介质
Lampropoulos et al. Automatic WSDL-guided test case generation for PropEr testing of web services
US6625807B1 (en) Apparatus and method for efficiently obtaining and utilizing register usage information during software binary translation
CN111209210A (zh) 一种生成测试用例方法、装置、电子设备及存储介质
CN115525282A (zh) 跨平台桌面应用程序的实现方法及其相关设备
CN112286784B (zh) 一种测试用例生成方法、装置、服务器及存储介质
CN110187886A (zh) 一种文档网站生成方法及终端
US6715141B1 (en) Multiphase single pass interpreter
CN107239265B (zh) Java函数与C函数的绑定方法及装置
CN105786465A (zh) 一种脚本语言执行方法及装置
US20110047530A1 (en) Method and System for Testing a Software Program

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant