Запишите XML-файл с помощью lxml библиотекой в Python

Вам необходимо иметь

app-route : для реализации маршрутизации

Железные страницы : в основном переключатель страниц для загрузки требуемого компонента на спрос

в app-route.,

/* observer: Its a simple observer (basically a watch which holds current value & old value) that triggers whenever data changed in page property. We read the observer and calls a function to grab its earlier */

static get properties() {
  return {
  page:{
    type: String,
    reflectToAttribute: true,
    observer: '_pageChanged'
  }
  };
}
_pageChanged(currentPage, oldPage){
	  console.log('CURRENT - ', currentPage);
	  console.log('OLD - ', oldPage);
	  switch(currentPage){
		  case 'home':
			import('./home-comp.js').then()
			break;
		case 'about':
			import('./about-comp.js').then()
			break;
		case 'contact':
			import('./contact-comp.js').then()
			break;
		default:
			this.page = 'home';
	  }
  }



	

Но для первой загрузки., свойство страницы не содержит никакого значения и выдает undefined.

Следовательно, мы можем использовать complex observer для наблюдения за такими изменениями

static get observers(){
	return ['_routerChanged(routeData.page)'];
}
_routerChanged(page){
	console.log('CHANGED PAGE - ', page);
	this.page = page || 'home';
}

Измененные данные маршрута не загружают компоненты, если только у нас есть iron-pages. В основном это компонентный переключатель / загрузчик по требованию. Оберните все компоненты в main-app в







		
		
		

Вот полное руководство по реализации маршрутизации в полимере 3 с использованием приложение-маршрут. Надеюсь, это поможет нажмите здесь

47
задан systempuntoout 12 April 2011 в 19:12
поделиться

2 ответа

Вы можете получить строку из элемента и затем записать ее из учебника по lxml

str = etree.tostring(root, pretty_print=True)

или преобразовать в дерево элементов

et = etree.ElementTree(root)
et.write(sys.stdout, pretty_print=True)
61
ответ дан 26 November 2019 в 19:47
поделиться

Это работает на меня:

et = etree.ElementTree(document)
with open('sample.xml', 'wb') as f:
    et.write(f, encoding="utf-8", xml_declaration=True, pretty_print=True)
1
ответ дан 26 November 2019 в 19:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: