我在Angular中明显没有理解依赖注入的东西。我有一项使用其他服务的服务。我想在同一个组件中提供两者。我的组件如下所示:
@Component(
/// ...
providers: const [
MediatorService,
])
class ReviewTableComponent implements OnDestroy, OnInit {
final MediatorService _mediatorService;
ReviewTableComponent(
this._mediatorService,
);
/// ...
}
MediatorService
是使用名为QuoteCompositionService
的其他服务的服务。像这样,组件渲染得很好,我可以调用MediatorService
上的方法。显然,使用QuoteCompositionService
的任何内容都会失败,因为它没有在其他地方提供。
所以,如果我将QuoteCompositionService
添加到同一个组件,就像这样
@Component(
/// ...
providers: const [
QuoteCompositionService,
MediatorService,
])
class ReviewTableComponent implements OnDestroy, OnInit {
final QuoteCompositionService _quoteCompositionService;
final MediatorService _mediatorService;
ReviewTableComponent(
this._quoteCompositionService,
this._mediatorService,
);
/// ...
}
然后我希望能够调用MediatorService
上的所有方法。
但是,我现在收到一条错误消息,指出_mediatorService
是null
。为什么将QuoteCompositionService
添加到提供者列表会使_mediatorService
null
?
我假设在QuoteCompositionService
实例化之前我必须提供ReviewTableComponent
。但是,我不明白为什么_mediatorService
将null
以前没有MediatorService
。
如果有帮助的话,这里有一些@Injectable()
class MediatorService {
final QuoteCompositionService _quoteCompositionService;
/// ...
MediatorService(
this._quoteCompositionService,
/// ...
);
/// ...
}
。 (也许我应该在这里做点什么?)
library(tm)
library(RTextTools)
library(e1071)
library(caret)
library(ROCR)
cdr<- getwd()
setwd("E:/KULIAH")
text<- read.csv("klasifikasi tweet.csv")
set.seed(95616)
index<- sample(2, dim(text)[1], replace = T, prob = c(0.8,0.2))
text = rbind(text[index==1,], text[index==2,])
input <- text$tweet
class <- as.factor(text$kelas.)
text_mat<-create_matrix(input,language = "english", removeNumbers = TRUE,removePunctuation = F, removeStopwords =F,removeSparseTerms=0.998, stemWords = F, weighting = weightTfIdf)
train_data<- create_container(text_mat, as.numeric(class), trainSize=1:4000, testSize=4001:4449, virgin = FALSE)
model<-train_model(train_data, "MAXENT")
result<- classify_model(train_data, model)
答案 0 :(得分:0)
没关系。 QuoteCompositionService
提供商列表中存在拼写错误。显然有拼写错误导致编译失败。