作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我正在使用 workspaces Angular 最新版本(>6)的概念。
CLI 可以生成一个项目 library使用这样的命令:
ng generate library api
默认app的tsconfig.json是这样的
"paths": {
"env": ["src/environments"],
"api": [
"dist/api"
],
之后我像这样在 api 库中创建了一个名为 ApiService 的服务,但它不工作
import { Injectable } from '@angular/core';
import { HttpClient } from '@angular/common/http';
import { environment } from 'env';
@Injectable()
export class ApiService {
constructor(private http: HttpClient) {}
getApiUrl(){
console.log("Hello Api Url"+environment.api_url)
}
}
当我使用命令 ng build api
构建 api 库时返回错误:
BUILD ERROR
error TS6059: File 'ROOT_APP_PATH/src/environments/environment.ts'
is not under 'rootDir' 'ROOT_APP_PATH\projects\api\src'.
'rootDir' is expected to contain all source files.
请帮助解决这个错误。
提前致谢。
最佳答案
你应该添加 providedIn:
@可注入(inject)({ 提供于:'root'})
关于angular - 在工作区库中使用 Angular 环境变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51702486/
我是一名优秀的程序员,十分优秀!