我正在使用 Yii2 DynamicForms extension创建动态字段没有问题,但今天当我运行 Composer update 时收到以下错误:
调用未定义的方法 Symfony\Component\DomCrawler\Crawler::rewind()
错误指向 /vendor/wbraganca/yii2-dynamicform/DynamicFormWidget.php
的第 201 行:
private function removeItems($content)
{
$document = new \DOMDocument('1.0', \Yii::$app->charset);
$crawler = new Crawler();
$crawler->addHTMLContent($content, \Yii::$app->charset);
$root = $document->appendChild($document->createElement('_root'));
$crawler->rewind(); // Error here
$root->appendChild($document->importNode($crawler->current(), true));
$domxpath = new \DOMXPath($document);
$crawlerInverse = $domxpath->query(CssSelector::toXPath($this->widgetItem));
foreach ($crawlerInverse as $elementToRemove) {
$parent = $elementToRemove->parentNode;
$parent->removeChild($elementToRemove);
}
$crawler->clear();
$crawler->add($document);
return $crawler->filter('body')->eq(0)->html();
}
此方法已从 DomCrawler 中删除?
怎么解决这个问题?
最佳答案
另一种解决方案是将 DomCrawler 恢复到 2.8 版本。
{
"symfony/dom-crawler": "2.8",
"symfony/css-selector": "2.8",
"wbraganca/yii2-dynamicform": "2.0.1"
}
摘自: https://github.com/wbraganca/yii2-dynamicform/issues/108
关于php - 调用未定义的方法 Symfony\Component\DomCrawler\Crawler::rewind(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34088638/