发布于 2017-08-08 00:01:59
这是一个很好的问题,我很高兴你问我,因为我希望我第一次遇到这个小问题的时候就有了我要写的东西。这是一个类型/javascript和webpack的问题之前,它是一个角度的问题。我肯定会尽快在我的博客上写一篇文章。
你的场景:
你跑
npm install mathjsimport {mathjs} from "../../node_modules/mathjs/dist/math";"set --allowJS".,你这样做:
Set --allowJS in config (tsconfig.json) { "compilerOptions": { "allowJs": true, ...错误出现在./node_ code /mathjs/dist/math.js (12209,13):检测到无法到达的代码。
Solution:为目标库(@type/mathjs)安装一个类型文件
npm install --save @types/mathjsimport * as mjs from "mathjs"像这样使用它:
console.log("e was: " + mjs.e);我在这里的github上有完整的math.js库解决方案,https://github.com/res63661/importOldJSDemoWithTypings/
更多:举个例子,只看你自己的角度项目。每次创建带有ng新的新项目后,CLI都会在运行npm时创建node_modules文件夹。深入到这里,并注意到许多.js文件的.js文件。
当处理类型或定义自己的(.d.ts文件)时,请确保在构建之间重新启动服务器,因为类型当前似乎没有动态更新。
进一步阅读:
最后:
如果您处于紧要关头,而这并不适用于您,我成功地为另一个(小得多的)模块创建了一个自定义包装器,方法是将它封装在主导出类型中。
export var moduleNamer = (function(){
//module implementation
}());然后将本地的.js文件转储到我的组件中,然后按以下方式引用它:
//reference like this from your component:
import {moduleNamer} from "./source"; //from source.js-富有
发布于 2020-05-26 06:58:16
我这样做了,这对angular9有效。
首先安装npm软件包mathjs。
npm install mathjs然后导入组件或指令。
import { round } from 'mathjs'你可以用这个来测试。
console.log(round(math.pi, 3) )发布于 2017-08-07 14:49:11
尝试将脚本包含到index.html中:
<script src="./assets/math.js" type="text/javascript"></script>然后将其添加到组件文件中:
declare const math; 然后,可以在组件中使用数学:
ngOnInit(): void {
console.log(math.sqrt(-4););
}https://stackoverflow.com/questions/45549698
复制相似问题