angular13添加commonJS部署问题
因为业务要求数据格式问题,新增了accounting.js做格式化,本地直接引用 import accouting from ‘accounting’ 没问题,但是部署的时候未打包进去,研究之后做了以下更改,可能有重复多余的操作。
1. 使用accounting ,而不是types/accounting
2.tsconfig.json 中,添加 "esModuleInterop": true, "types":["node"], 两处配置
{
"esModuleInterop": true,
"compileOnSave": false,
"compilerOptions": {
"types":["node"],
"baseUrl": "./",
"outDir": "./dist/out-tsc",
3.angular.json 中 增加"allowedCommonJsDependencies": ["accounting"],这里是消除编译警告
"architect": {
"build": {
"builder": "@angular-devkit/build-angular:browser",
"options": {
"allowedCommonJsDependencies": ["accounting"],
4. service.ts 文件中 使用private accounting = require('accounting'); 引入
并在文件结尾增加declare var require: any