我是VueJS和Webpack的新手 . 我用VueJS CLI创建了一个项目并试图使用它 . 我需要在我的代码中插入CDN .
使用标准的HTML,CSS和JS解决方案时,我会包含这样的CDN:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>False Merge</title>
<!-- CDN -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css">
<link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/v/dt/dt-1.10.16/sl-1.2.5/datatables.min.css"/>
<!-- StyleSheets -->
<link rel="stylesheet" href="public/stylesheets/index.css" />
</head>
<body>
<script src="https://code.jquery.com/jquery-3.3.1.js" integrity="sha256-2Kok7MbOyxpgUVvAk/HJ2jigOSYS2auK4Pfzbm7uH60=" crossorigin="anonymous"></script>
<script type="text/javascript" src="https://cdn.datatables.net/v/dt/dt-1.10.16/sl-1.2.5/datatables.min.js"></script>
<script src="public/javascripts/index.js"></script>
</body>
</html>
如您所见,您可以添加带有HTML脚本标记的CDN脚本,并开始在JS中使用它 .
我试图在组件中对VueJS做同样的事情 . 我已准备好模板和样式部分 .
不幸的是,我不知道如何以简单的方式添加CDN以在Vue组件内的脚本标记中立即使用 . 我试图这样做,但它不起作用 .
<template>
<div class="index">
<div class="container">
<table id="table_dataset" class="display">
</table>
</div>
</div>
</template>
<script type="text/javascript" src="https://cdn.datatables.net/v/dt/dt-1.10.16/sl-1.2.5/datatables.min.js"></script>
<script>
export default {
name: 'Index',
data() {
return {
}
}
}
</script>
<!-- Add "scoped" attribute to limit CSS to this component only -->
<style scoped>
</style>
有没有办法将CDN(没有Webpack或NPM)添加到VueJS组件?
2 回答
不幸的是,不能,你不能将
<script>
标签添加到特定组件 via template .在您的情况下,您有一些选择:
1:使用NPM
使用
npm
属性安装依赖项Pros: 正确使用NPM和Webpack;范围定义;
Cons: 该脚本必须作为NPM包提供 .
注意:可用时这是 recommended 方法 .
步骤:
对于您的情况,you can check in datatables official page they do have a NPM package . 我可以像:
2:将<script>标记添加到index.html
找到并将
<script>
标签添加到index.html
Pros:
<script>
标记清楚地(并以声明方式)添加到HTML源代码中 . 该脚本只会加载一次 .Cons: 脚本将全局加载 .
步骤:
只需将
<script type="text/javascript" src="https://cdn.datatables.net/v/dt/dt-1.10.16/sl-1.2.5/datatables.min.js"></script>
添加到index.html
文件的末尾,最好是在</body>
之前 .3:以编程方式创建<script>标记
另一种方法是在组件构建时以编程方式在组件上创建
script
标记 .Pros: 代码仅保留在组件中 . 只有在加载组件时才会加载外部脚本 .
Cons: 加载后,脚本仍将全局可用 .
步骤/代码:
另一种选择是使用
v-if
指令在index.html中添加脚本在组件文件(
.vue
)中,如果要加载脚本,请将标志设置为true
: