我用Laravel后端开发了Angular 7应用程序。尝试为生产进行构建和部署时出现错误。
src / app / services / user.service.ts(10,32):错误TS2339:类型'{不存在属性'apiUrl',{production:boolean; }'。
在角度cli上,我运行了此
ng build --prod
environment.ts
export const environment = {
production: false,
apiUrl: 'http://example.com/api',
};
user.service.ts
import { Injectable } from '@angular/core';
import { HttpClient } from '@angular/common/http';
import { environment } from 'src/environments/environment';
@Injectable({
providedIn: 'root'
})
export class UserService {
private API_URL= environment.apiUrl;
constructor(private http: HttpClient) { }
login(email, password) {
const obj = {
email: email,
password: password
};
console.log(obj);
this.http.post(this.API_URL + '/login', obj)
.subscribe(res => console.log('login Done',res));
}
}
打开
ng build --prod
我希望它能够构建,然后将dist文件放到在线服务器上。
这是错误:
src / app / services / user.service.ts(10,32):错误TS2339:类型'{不存在属性'apiUrl',{production:boolean; }'。
注意:我是第一次这样做。
答案 0 :(得分:1)
environment.ts
文件将在构建期间替换,
ng build --prod
用environment.ts
替换了environment.prod.ts
,因此只需将 apiUrl 属性添加到environment.prod.ts
文件中的环境类中
export const environment = {
production: true,
apiUrl: 'http://example.com/api',
};
答案 1 :(得分:1)
只需要在 environment.ts
和 environment.prod.ts
中添加您的属性。
答案 2 :(得分:0)
只需将您的媒体资源添加到environment.ts
和environment.prod.ts
中。