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

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

Info

Publication number
CN112083966A
CN112083966A CN202010819181.6A CN202010819181A CN112083966A CN 112083966 A CN112083966 A CN 112083966A CN 202010819181 A CN202010819181 A CN 202010819181A CN 112083966 A CN112083966 A CN 112083966A
Authority
CN
China
Prior art keywords
vue
remote
component
content
main frame
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.)
Granted
Application number
CN202010819181.6A
Other languages
English (en)
Other versions
CN112083966B (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

Images

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

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 (5)

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

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112579242A (zh) * 2020-12-23 2021-03-30 平安普惠企业管理有限公司 一种页面跳转关系分析方法、装置、设备及存储介质

Citations (13)

* 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服务器
US20170116007A1 (en) * 2015-10-23 2017-04-27 Oracle International Corporation Execution of parameterized classes on legacy virtual machines
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 武汉联影医疗科技有限公司 应用程序的打包方法、装置、计算机设备和存储介质

Patent Citations (13)

* 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服务器
US20170116007A1 (en) * 2015-10-23 2017-04-27 Oracle International Corporation Execution of parameterized classes on legacy virtual machines
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 (5)

* Cited by examiner, † Cited by third party
Title
CUK5239: ""vue 远程js组件加载_vue.js组件用于全屏加载指示器"", pages 1 - 5, Retrieved from the Internet <URL:《blog.csdn.net/cuk5239/article/details/107696817》> *
CUK5340: ""Vue 远程JS组件加载_Vue.js的预加载程序组件"", pages 1 - 3, Retrieved from the Internet <URL:《blog.csdn.net/cuk5340/article/details/107663460》> *
张凌云: ""灌溉控制柜远程运维云业务系统的设计及关键技术研究"", 《中国优秀硕士学位论文全文数据库 (农业科技辑)》, pages 044 - 98 *
朱林: ""EFL平台的远程组件调用技术研究与实现"", 《中国优秀硕士学位论文全文数据库 (信息科技辑)》, pages 138 - 99 *
邓雯婷;: "基于Vue.js构建单页面GIS应用的方法研究", 科技创新与应用, no. 14, pages 11 - 13 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112579242A (zh) * 2020-12-23 2021-03-30 平安普惠企业管理有限公司 一种页面跳转关系分析方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN112083966B (zh) 2024-02-27

Similar Documents

Publication Publication Date Title
JP6629848B2 (ja) モバイルアプリ用ページ処理
US20110289484A1 (en) Method and System for Script Processing for Web-Based Applications
US9460222B2 (en) System for rewriting dynamically generated uniform resource locators in proxied hyper text markup language content in accordance with proxy server rules
US20090204883A1 (en) Method, Program and System for the Dynamic, Template-Based Generation of Internet Pages
US20150317156A1 (en) Systems and Methods for Automated Generation of Interactive Documentation Based on Web Application Description Language Files
CN104063401B (zh) 一种网页样式地址合并的方法和装置
US20060248538A1 (en) Xml interfaces in unified rendering
CN106909361B (zh) 基于模版引擎的web开发方法和装置
US9182953B2 (en) Hybrid dynamic code compiling device, method, and service system thereof
KR100750962B1 (ko) 구조적 데이터 구문 분석
WO2009085227A1 (en) Embedding metadata with displayable content and applications thereof
CN104461513B (zh) 一种生成表单界面的方法及装置
US20080209395A1 (en) Automatic code replacement
CN110941950B (zh) 接口文档的生成方法、装置、服务器及存储介质
CN110333863A (zh) 一种生成、显示小程序页面的方法及装置
CN111831384A (zh) 语言切换方法和装置、设备及存储介质
CN112083966B (zh) 一种加载远程vue组件的方法
US20090030996A1 (en) Technique of relaying communications between client apparatus and server apparatus
CN107239265B (zh) Java函数与C函数的绑定方法及装置
US8291385B2 (en) Method and system for testing a software program
CN106293862B (zh) 一种可扩展标记语言xml数据的解析方法和装置
CN111209210A (zh) 一种生成测试用例方法、装置、电子设备及存储介质
CN110738024A (zh) 将WebAPP转换为API服务接口的方法
US9727397B2 (en) Container-less JSP template
CN113641594B (zh) 跨端自动化测试方法以及相关装置

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