如何在angular 6中导入js文件。我尝试实现了一个导航栏,它包含js函数。谢谢!
我添加了名为nav.js的js文件
"scripts": [
"src/assets/js/nav.js"
]
发布于 2018-11-08 02:52:47
Angular 6有一个专门的地方,用于在angular.json的专用数组中声明js文件,在
/projects/$(youProjectName)/architect/build/options/scripts[]
和
/projects/$(youProjectName)/architect/test/options/scripts[]
举个例子:
npm install fast-levenshtein --save
我将在node-modules下安装一个js库
js lib文件相对于项目的路径声明如下:
"scripts": [
"node_modules/fast-levenshtein/levenshtein.js"
]
然后在组件中声明要使用的变量,如npm文档或@LuaXD所述
发布于 2018-06-02 06:58:30
您应该包含在index.html上,例如:
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>A random project</title>
<base href="/">
<meta name="viewport" content="width=device-width, initial-
scale=1">
<link rel="icon" type="image/x-icon" href="favicon.ico">
</head>
<body>
<link rel="stylesheet" href="https://cartodb-
libs.global.ssl.fastly.net/cartodb.js/v3/3.15/themes/css/cartodb.css"
/>
<script src="https://cartodb-libs.global.ssl.fastly.net/cartodb.js/v3/3.15/cartodb.core.js"></script>
<app-root></app-root>
</body>
</html>
在这种情况下,我包含了cartodb.js库,然后为了在我使用的任何组件或服务上使用cartodb.js:
declare var cartodb: any;
在任何文件(组件、服务等)的开头。
注将cartodb更改为您将使用的库的名称,例如,jquery的名称为:
declare var jquery:any;
declare var $ :any;
你应该有这样的东西:
import { Injectable } from '@angular/core';
// Other imports...
declare var cartodb: any;
@Injectable()
export class ARandomService {
}
如果您要使用的代码在npm中不存在,请进行P.s搜索。
发布于 2019-05-05 16:28:28
首先,你应该用npm安装库。然后,将该库添加到项目中的node_modules文件夹中。
现在:
如果你想将js文件导入到angular项目中,首先你应该检查angular的版本,如果你使用的是版本2和4,你应该这样写:
"scripts": [ "../node_modules/jquery/dist/jquery.min.js" ]
如果你使用的是比4更高的版本,比如5,6或者7,你应该这样写:
"scripts": [ "./node_modules/jquery/dist/jquery.min.js" ]
在本例中,我将jquery导入到angular项目中。我希望,它能起作用
https://stackoverflow.com/questions/50649194
复制相似问题