国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > 幫助中心 > 正文

Vue如何引入遠程JS文件

2024-07-09 22:40:30
字體:
來源:轉載
供稿:網友

問題

最近在使用 Vue 做東西,用到釘釘掃描登錄的功能,這里需要引入遠程的 js 文件,因為 Vue 的方式跟之前的不太一樣,又不想把文件下載到本地應用,找了一下解決的方法,貌似都需要引入第三方的庫,最后找到了解決方案,分享之。

思路

一開始的思路是在 Vue 加載完 Dom 之后(mounted),使用 JavaScript 腳本在 body 中插入遠程的腳本文件。

后來發現了 Vue 的 createElement 方法,簡單的封裝一個組件解決問題。

解決方法

第一版代碼(直接在操作 Dom )如下:

export default { mounted() {  const s = document.createElement('script');  s.type = 'text/javascript';  s.src = 'https://g.alicdn.com/dingding/dinglogin/0.0.2/ddLogin.js';  document.body.appendChild(s); },}

使用 createElement 方法:

export default { components: {  'dingtalk': {   render(createElement) {    return createElement(     'script',     {      attrs: {       type: 'text/javascript',       src: 'https://g.alicdn.com/dingding/dinglogin/0.0.2/ddLogin.js',      },     },    );   },  }, },}// 使用 <dingtalk></dingtalk> 在頁面中調用

終極方案

通過封裝一個組件 remote-js 實現:

export default { components: {  'remote-js': {  render(createElement) {   return createElement('script', { attrs: { type: 'text/javascript', src: this.src }});  },  props: {   src: { type: String, required: true },  }, }, },}

使用方法:

<remote-js src="https://g.alicdn.com/dingding/dinglogin/0.0.2/ddLogin.js"></remote-js>

因為剛開始學習 Vue 有什么問題歡迎大家指出,希望對大家的學習有所幫助,也希望大家多多支持武林網之家。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 琼结县| 乌兰浩特市| 台北县| 梧州市| 修水县| 阿荣旗| 讷河市| 平舆县| 盐池县| 雷波县| 沙洋县| 巴楚县| 岑溪市| 福海县| 建宁县| 文化| 铁岭县| 西乌珠穆沁旗| 合山市| 昌吉市| 临潭县| 屯门区| 望城县| 远安县| 鄂托克旗| 西盟| 新余市| 保山市| 阜城县| 田阳县| 双江| 山丹县| 桓台县| 蕉岭县| 剑川县| 新化县| 西乌珠穆沁旗| 镇平县| 桦甸市| 游戏| 商水县|