我有一个项目,其中有几个问题可供选择,我希望第一个问题默认出现。
我看过一个示例,该示例如何使用以下类型的索引来实现此目标:
[Fact]
public void Test10() {
string item_xml =
"<item>\n"+
"<title>Item Title</title><link>http://example.com/news/somelink</link>\n"+
"<content url=\"https://s3.example.com/someorg/somemedia_5547_500x643_thmb.jpg\" xmlns=\"http://search.yahoo.com/mrss/\"></content>\n"+
"<contentType> releases </contentType>\n"+
"<pubDate> Thu, 06 Jun 2019 12:30:00 GMT </pubDate>"+
"</item>";
XElement xitem = XElement.Parse(item_xml);
XmlWriterSettings xmlWriterSettings = new XmlWriterSettings() {
Indent = true, OmitXmlDeclaration = true, NamespaceHandling = NamespaceHandling.OmitDuplicates
};
using (var sw = new StringWriter()) {
using (var writer = XmlWriter.Create(sw, xmlWriterSettings)) {
writer.WriteStartDocument();
writer.WriteStartElement("rss");
writer.WriteAttributeString("media", "http://www.w3.org/2000/xmlns/", "http://search.yahoo.com/mrss/");
writer.WriteAttributeString("version", "2.0");
writer.WriteStartElement("channel");
xitem.WriteTo(writer);
writer.WriteEndElement();
writer.WriteEndElement();
writer.WriteEndDocument();
}
string result = sw.ToString();
Assert.Contains("media:", result);
}
}
它可以工作,但是当我要将选择绑定到组件的属性时,就不再选择它:
<content xmlns="http://search.yahoo.com/mrss/">
您可以在此处查看示例:
https://stackblitz.com/edit/angular-rv9vqi
正如在某些答案中所述,解决方案是为serachterm设置默认值,但是我遇到的问题(我无法在操场上重现它)是我从要求提供后面,并且在构建组件时仍然没有它们,这给了我一个错误..一旦服务中存在这些搜索词,我该如何使它们分配值?
答案 0 :(得分:3)
您可以使用Angulars双向数据绑定来绑定到<select>
元素的value attribute。在您的示例中,它看起来像这样:
<select [(value)]="searchterms.answerId">
<option *ngFor="let answer of answers" [value]="answer.id">{{answer.name}}</option>
</select>
请注意,通过允许您删除value
和option
[selected]="i == 2"
属性如何清除let i = index
元素
但是,就像其他人提到的那样,您将需要在组件代码中初始化所需的默认值。
这是StackBlitz Demo与您的代码一起工作的
答案 1 :(得分:0)
您需要将ERROR
Object { headers: {…}, status: 200, statusText: "OK", url: "http://127.0.0.1:5000/schedule?engineer=undefined", ok: false, name: "HttpErrorResponse", message: "Http failure during parsing for http://127.0.0.1:5000/schedule?engineer=undefined", error: {…} }
core.js:6014:19
设置为适当的默认值。就您而言
searchterms.answerId
答案 2 :(得分:0)
然后,您应该在组件中绑定searchterms
。
您可以按照以下步骤在constructor
中进行操作。
this.searchterms.answerId = this.answers[1].id;