我正在尝试点击此链接以在角度组件中包含来自CDNs
moment.js
,但抛出错误_moment is not defined
。
索引.html
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.27.0/moment.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.27.0/moment-with-locales.min.js"></script>
元件
import * as _moment from 'moment'; // works well but includes in main.js bundle on ng build --prod
// declare let _moment: any; // throws error '_moment is not defined' but not included in main.js as expected to use from CDNs
ngOnInit(): void {
const d = _moment(value).format('DD-MMM-YY');
console.error(d);
}
我在online
和off-line
都尝试过,但没有运气。
注意:我运行npm i moment --save-dev
以在没有互联网的环境中使用dev
时刻。
Angular.json
"scripts": [
"node_modules/moment/min/moment.min.js",
]
我正在使用 Angular 10。我错过了什么吗?
在组件类型的顶部:
declare let moment: any; //declare moment
你必须离开(将脚本导入保留在索引中.html)。此解决方案的缺点是您在打字稿中缺少智能和您喜欢的一切;)
请尝试 npm i 时刻
import * as _moment from 'moment';
注意:如果您在导入时刻时遇到问题,请尝试在 tsconfig.json 文件的编译器选项中添加 "allowSyntheticDefaultImports":true,然后使用语法链接