今天想尝试一下iconfont的symbol用法,就复制了js的外链准备看看效果。
结果呢,import
和require
写法一直报错
import '//at.alicdn.com/t/font_1451815_senarwrqu6.js'
// error
This dependency was not found:
* //at.alicdn.com/t/font_1451815_senarwrqu6.js in ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&index=0!./src/components/roll.vue
To install it, you can run: npm install --save //at.alicdn.com/t/font_1451815_senarwrqu6.js
是我写代码的姿势有问题?还是我的配置姿势不对导致插入失败?
百般无奈使用了百度大法,输入框键入Vue文件如何导入外链JS?
结果出来的都是导入项目内的JS,import...from...啥啥啥的。
百度无效,自己想了一个办法。
模板template
中不允许直接写入script
标签,那么我写一个组件插入好了,于是写了以下
Vue.component('my-script', {
render: function (createElement) {
return createElement('script', {
attrs: {
type: 'text/javascript',
src: this.src
}
})
},
props: {
src: {
type: String,
required: true
}
}
})
// template
<my-script src="//at.alicdn.com/t/font_1451815_senarwrqu6.js"></my-script>
这个时候才正确的加载成功。
觉得这种写法太过繁琐,一定有直接可以导入的easy方法但是我没有找到,各位走过路过的大佬,告诉我一哈
在Vue单文件组件中,使用import引入外部文件,可以这样写:
import '//at.alicdn.com/t/font_1451815_senarwrqu6.js'
在Vue单文件组件中,使用require引入,可以这样写:
require('//at.alicdn.com/t/font_1451815_senarwrqu6.js').
此外,Vue单文件组件一般包含三部分:
(1)<template></template>
(2)<script></script>
(3)<style></style>
你可以把需要引入的外部js文件,写在<script></script>里。