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

首頁 > 編程 > JavaScript > 正文

Vue如何引入遠程JS文件

2019-11-19 16:47:02
字體:
來源:轉載
供稿:網友

問題

最近在使用 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 有什么問題歡迎大家指出,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 故城县| 梅河口市| 巴塘县| 信宜市| 奉贤区| 双峰县| 舞钢市| 霍城县| 中山市| 长子县| 阳山县| 固阳县| 舞钢市| 荥阳市| 陕西省| 景东| 常宁市| 安阳县| 长海县| 东丽区| 托里县| 桐柏县| 扬中市| 平乡县| 习水县| 武义县| 吕梁市| 福安市| 荔波县| 阿克陶县| 彩票| 朝阳区| 读书| 延吉市| 丰都县| 建水县| 清镇市| 泰顺县| 沙雅县| 长春市| 弋阳县|