如何从 Angular (TypeScript) 的 package.json 中显示应用版本?
大家好!我正在用 Angular + Ionic 开发一个移动应用。想在页脚或“关于”页面显示当前应用版本。通常我们手动在 `package.json` 中写版本号,希望从那里读取以避免重复。
我尝试过这样做:
```typescript
import { version } from '../../package.json';
@Component({...})
export class AboutPage {
appVersion = version;
}
```
但 TypeScript 报错:“Cannot find module '../../package.json'. Consider using '--resolveJsonModule' to import module with '.json' extension”。然后我在 `tsconfig.json` 中启用了 `resolveJsonModule`,但构建时又出错,说 `package.json` 不是模块,Webpack 无法解析。我还尝试通过 `fetch('/package.json')` 读取——运行时文件不可用。
有没有正常的方法在 Angular 应用中从 `package.json` 获取版本?要能在开发模式和生成环境(通过 `ng build --prod` 构建)下工作。最好不用 hack。