forked from mawansui/ForTests
-
Notifications
You must be signed in to change notification settings - Fork 0
/
NewsDetail_BackUp.js
94 lines (79 loc) · 1.77 KB
/
NewsDetail_BackUp.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
'use strict';
import React from 'react';
import {
StyleSheet,
View,
Text,
Image,
Component,
ScrollView,
WebView
} from 'react-native';
var styles = StyleSheet.create({
description: {
fontSize: 20,
textAlign: 'center',
color: '#FFFFFF'
},
container: {
flex: 1,
backgroundColor: 'white',
}
});
var htmlstyles = StyleSheet.create({
text: {
fontSize: 16,
fontFamily: 'Times New Roman',
margin: 10
},
p: {
fontSize: 16,
fontFamily: 'Times New Roman',
margin: 10
}
});
var DOMParser = require('xmldom').DOMParser;
var Entities = require('html-entities').AllHtmlEntities;
var HTMLView = require('react-native-htmlview');
var articleText;
var realArticleText;
var transformedString;
class NewsDetail extends Component {
constructor() {
super();
this.state = {
isLoaded: false
};
}
componentWillMount() {
this.fetchNews();
}
fetchNews() {
console.log('Fetching news from given link...');
var newsID = this.props.link;
console.log('Given newsID: ' + newsID);
var newsURLAddress = "http://kpfu.ru/portal/PRIVATEOFFICE_ANDROID.news_content?p_id="+newsID;
console.log('Resulted combined URL: ' + newsURLAddress);
var entities = new Entities();
fetch(newsURLAddress)
.then((response) => response.text())
.then((responseText) => {
console.log('Now the parsing starts!');
transformedString = entities.decode(responseText);
console.log('transformedString has loaded!!!');
})
this.setState({
isLoaded: true
});
}
render() {
console.log('render function works');
return (
<WebView
source={{html: transformedString}}
scalesPageToFit={false}
/>
)
}
}
module.exports = NewsDetail;