,
189 | document.getElementById("content")
190 | );
191 | '
192 | ))
193 | ) %>>%
194 | attachDependencies(list(
195 | html_dependency_react(),
196 | htmlDependency(
197 | name = "jquery"
198 | ,version = "2.2.0"
199 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.0/")
200 | ,script = c("jquery.min.js")
201 | ),
202 | htmlDependency(
203 | name = "marked"
204 | ,version = "0.3.5"
205 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/marked/0.3.5/")
206 | ,script = c("marked.min.js")
207 | )
208 | )) %>>%
209 | browsable()
210 |
211 |
--------------------------------------------------------------------------------
/tutorial11.R:
--------------------------------------------------------------------------------
1 | library(htmltools)
2 | library(pipeR)
3 |
4 | tagList(
5 | tags$div(
6 | id = "content"
7 | )
8 | ,tags$script(type = "text/babel"
9 | ,'
10 | // tutorial9.js
11 | var CommentBox = React.createClass({
12 | render: function() {
13 | return (
14 |
15 |
Comments
16 |
17 |
18 |
19 | );
20 | }
21 | });
22 |
23 | // tutorial10.js
24 | var CommentList = React.createClass({
25 | render: function() {
26 | var commentNodes = this.props.data.map(function(comment){
27 | return (
28 |
29 | {comment.text}
30 |
31 | )
32 | });
33 | return (
34 |
35 | {commentNodes}
36 |
37 | );
38 | }
39 | });
40 |
41 | var CommentForm = React.createClass({
42 | render: function() {
43 | return (
44 |
45 | Hello, world! I am a CommentForm.
46 |
47 | );
48 | }
49 | });
50 |
51 | // tutorial7.js
52 | var Comment = React.createClass({
53 | rawMarkup: function() {
54 | var rawMarkup = marked(this.props.children.toString(), {sanitize: true});
55 | return { __html: rawMarkup };
56 | },
57 |
58 | render: function() {
59 | return (
60 |
61 |
62 | {this.props.author}
63 |
64 |
65 |
66 | );
67 | }
68 | });
69 |
70 | // tutorial8.js
71 | var data = [
72 | {author: "Pete Hunt", text: "This is one comment"},
73 | {author: "Jordan Walke", text: "This is *another* comment"}
74 | ];
75 |
76 | // tutorial11.js
77 | ReactDOM.render(
78 | ,
79 | document.getElementById("content")
80 | );
81 |
82 | ' %>>% HTML
83 | )
84 | ) %>>%
85 | attachDependencies(list(
86 | htmlDependency(
87 | name = "react"
88 | ,version = "0.14.8"
89 | ,src = c(paste0(getwd(),"/build"))
90 | ,script = c("react.min.js","react-dom.min.js")
91 | )
92 | ,htmlDependency(
93 | name = "babel-browser"
94 | ,version = "5.8.23"
95 | ,src = c(href="http://cdnjs.cloudflare.com/ajax/libs/babel-core/5.8.23")
96 | ,script = c("browser.min.js")
97 | )
98 | ,htmlDependency(
99 | name = "jquery"
100 | ,version = "2.2.0"
101 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.0/")
102 | ,script = c("jquery.min.js")
103 | )
104 | ,htmlDependency(
105 | name = "marked"
106 | ,version = "0.3.5"
107 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/marked/0.3.5/")
108 | ,script = c("marked.min.js")
109 | )
110 | )) %>>%
111 | html_print
--------------------------------------------------------------------------------
/tutorial12.R:
--------------------------------------------------------------------------------
1 | library(htmltools)
2 | library(pipeR)
3 |
4 | tagList(
5 | tags$div(
6 | id = "content"
7 | )
8 | ,tags$script(type = "text/babel"
9 | ,'
10 | // tutorial12.js
11 | var CommentBox = React.createClass({
12 | getInitialState: function() {
13 | return {data: []};
14 | },
15 | render: function() {
16 | return (
17 |
18 |
Comments
19 |
20 |
21 |
22 | );
23 | }
24 | });
25 |
26 | // tutorial10.js
27 | var CommentList = React.createClass({
28 | render: function() {
29 | var commentNodes = this.props.data.map(function(comment){
30 | return (
31 |
32 | {comment.text}
33 |
34 | )
35 | });
36 | return (
37 |
38 | {commentNodes}
39 |
40 | );
41 | }
42 | });
43 |
44 | var CommentForm = React.createClass({
45 | render: function() {
46 | return (
47 |
48 | Hello, world! I am a CommentForm.
49 |
50 | );
51 | }
52 | });
53 |
54 | // tutorial7.js
55 | var Comment = React.createClass({
56 | rawMarkup: function() {
57 | var rawMarkup = marked(this.props.children.toString(), {sanitize: true});
58 | return { __html: rawMarkup };
59 | },
60 |
61 | render: function() {
62 | return (
63 |
64 |
65 | {this.props.author}
66 |
67 |
68 |
69 | );
70 | }
71 | });
72 |
73 | // tutorial8.js
74 | var data = [
75 | {author: "Pete Hunt", text: "This is one comment"},
76 | {author: "Jordan Walke", text: "This is *another* comment"}
77 | ];
78 |
79 | // tutorial11.js
80 | ReactDOM.render(
81 | ,
82 | document.getElementById("content")
83 | );
84 |
85 | ' %>>% HTML
86 | )
87 | ) %>>%
88 | attachDependencies(list(
89 | htmlDependency(
90 | name = "react"
91 | ,version = "0.14.8"
92 | ,src = c(paste0(getwd(),"/build"))
93 | ,script = c("react.min.js","react-dom.min.js")
94 | )
95 | ,htmlDependency(
96 | name = "babel-browser"
97 | ,version = "5.8.23"
98 | ,src = c(href="http://cdnjs.cloudflare.com/ajax/libs/babel-core/5.8.23")
99 | ,script = c("browser.min.js")
100 | )
101 | ,htmlDependency(
102 | name = "jquery"
103 | ,version = "2.2.0"
104 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.0/")
105 | ,script = c("jquery.min.js")
106 | )
107 | ,htmlDependency(
108 | name = "marked"
109 | ,version = "0.3.5"
110 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/marked/0.3.5/")
111 | ,script = c("marked.min.js")
112 | )
113 | )) %>>%
114 | html_print
115 |
116 |
117 | # use reactR --------------------------------------------------------------
118 | library(htmltools)
119 | library(reactR)
120 |
121 | tagList(
122 | tags$div(id = "content"),
123 | tags$script(babel_transform(
124 | '// tutorial12.js
125 | var CommentBox = React.createClass({
126 | getInitialState: function() {
127 | return {data: []};
128 | },
129 | render: function() {
130 | return (
131 |
132 |
Comments
133 |
134 |
135 |
136 | );
137 | }
138 | });
139 |
140 | // tutorial10.js
141 | var CommentList = React.createClass({
142 | render: function() {
143 | var commentNodes = this.props.data.map(function(comment){
144 | return (
145 |
146 | {comment.text}
147 |
148 | )
149 | });
150 | return (
151 |
152 | {commentNodes}
153 |
154 | );
155 | }
156 | });
157 |
158 | var CommentForm = React.createClass({
159 | render: function() {
160 | return (
161 |
162 | Hello, world! I am a CommentForm.
163 |
164 | );
165 | }
166 | });
167 |
168 | // tutorial7.js
169 | var Comment = React.createClass({
170 | rawMarkup: function() {
171 | var rawMarkup = marked(this.props.children.toString(), {sanitize: true});
172 | return { __html: rawMarkup };
173 | },
174 |
175 | render: function() {
176 | return (
177 |
178 |
179 | {this.props.author}
180 |
181 |
182 |
183 | );
184 | }
185 | });
186 |
187 | // tutorial8.js
188 | var data = [
189 | {author: "Pete Hunt", text: "This is one comment"},
190 | {author: "Jordan Walke", text: "This is *another* comment"}
191 | ];
192 |
193 | // tutorial11.js
194 | ReactDOM.render(
195 | ,
196 | document.getElementById("content")
197 | );
198 | '
199 | ))
200 | ) %>>%
201 | attachDependencies(list(
202 | html_dependency_react(),
203 | htmlDependency(
204 | name = "jquery"
205 | ,version = "2.2.0"
206 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.0/")
207 | ,script = c("jquery.min.js")
208 | ),
209 | htmlDependency(
210 | name = "marked"
211 | ,version = "0.3.5"
212 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/marked/0.3.5/")
213 | ,script = c("marked.min.js")
214 | )
215 | )) %>>%
216 | browsable()
217 |
218 |
--------------------------------------------------------------------------------
/tutorial13.R:
--------------------------------------------------------------------------------
1 | library(htmltools)
2 | library(pipeR)
3 |
4 | tagList(
5 | tags$div(
6 | id = "content"
7 | )
8 | ,tags$script(type = "text/babel"
9 | ,'
10 | // tutorial13.js
11 | var CommentBox = React.createClass({
12 | getInitialState: function() {
13 | return {data: []};
14 | },
15 | componentDidMount: function() {
16 | $.ajax({
17 | this.props.url,
18 | dataType: "json",
19 | cache: false,
20 | success: function(data) {
21 | this.setState({data: data});
22 | }.bind(this),
23 | error: function(xhr, status, err) {
24 | console.error(this.props.url, status, err.toString());
25 | }.bind(this)
26 | })
27 | },
28 | render: function() {
29 | return (
30 |
31 |
Comments
32 |
33 |
34 |
35 | );
36 | }
37 | });
38 |
39 | // tutorial10.js
40 | var CommentList = React.createClass({
41 | render: function() {
42 | var commentNodes = this.props.data.map(function(comment){
43 | return (
44 |
45 | {comment.text}
46 |
47 | )
48 | });
49 | return (
50 |
51 | {commentNodes}
52 |
53 | );
54 | }
55 | });
56 |
57 | var CommentForm = React.createClass({
58 | render: function() {
59 | return (
60 |
61 | Hello, world! I am a CommentForm.
62 |
63 | );
64 | }
65 | });
66 |
67 | // tutorial7.js
68 | var Comment = React.createClass({
69 | rawMarkup: function() {
70 | var rawMarkup = marked(this.props.children.toString(), {sanitize: true});
71 | return { __html: rawMarkup };
72 | },
73 |
74 | render: function() {
75 | return (
76 |
77 |
78 | {this.props.author}
79 |
80 |
81 |
82 | );
83 | }
84 | });
85 |
86 | // tutorial8.js
87 | var data = [
88 | {author: "Pete Hunt", text: "This is one comment"},
89 | {author: "Jordan Walke", text: "This is *another* comment"}
90 | ];
91 |
92 | // tutorial11.js
93 | ReactDOM.render(
94 | ,
95 | document.getElementById("content")
96 | );
97 |
98 | ' %>>% HTML
99 | )
100 | ) %>>%
101 | attachDependencies(list(
102 | htmlDependency(
103 | name = "react"
104 | ,version = "0.14.8"
105 | ,src = c(paste0(getwd(),"/build"))
106 | ,script = c("react.min.js","react-dom.min.js")
107 | )
108 | ,htmlDependency(
109 | name = "babel-browser"
110 | ,version = "5.8.23"
111 | ,src = c(href="http://cdnjs.cloudflare.com/ajax/libs/babel-core/5.8.23")
112 | ,script = c("browser.min.js")
113 | )
114 | ,htmlDependency(
115 | name = "jquery"
116 | ,version = "2.2.0"
117 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.0/")
118 | ,script = c("jquery.min.js")
119 | )
120 | ,htmlDependency(
121 | name = "marked"
122 | ,version = "0.3.5"
123 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/marked/0.3.5/")
124 | ,script = c("marked.min.js")
125 | )
126 | )) %>>%
127 | html_print
128 |
129 |
130 | # use reactR --------------------------------------------------------------
131 | library(htmltools)
132 | library(reactR)
133 |
134 | tagList(
135 | tags$div(id = "content"),
136 | tags$script(babel_transform(
137 | '// tutorial13.js
138 | var CommentBox = React.createClass({
139 | getInitialState: function() {
140 | return {data: []};
141 | },
142 | componentDidMount: function() {
143 | $.ajax({
144 | this.props.url,
145 | dataType: "json",
146 | cache: false,
147 | success: function(data) {
148 | this.setState({data: data});
149 | }.bind(this),
150 | error: function(xhr, status, err) {
151 | console.error(this.props.url, status, err.toString());
152 | }.bind(this)
153 | })
154 | },
155 | render: function() {
156 | return (
157 |
158 |
Comments
159 |
160 |
161 |
162 | );
163 | }
164 | });
165 |
166 | // tutorial10.js
167 | var CommentList = React.createClass({
168 | render: function() {
169 | var commentNodes = this.props.data.map(function(comment){
170 | return (
171 |
172 | {comment.text}
173 |
174 | )
175 | });
176 | return (
177 |
178 | {commentNodes}
179 |
180 | );
181 | }
182 | });
183 |
184 | var CommentForm = React.createClass({
185 | render: function() {
186 | return (
187 |
188 | Hello, world! I am a CommentForm.
189 |
190 | );
191 | }
192 | });
193 |
194 | // tutorial7.js
195 | var Comment = React.createClass({
196 | rawMarkup: function() {
197 | var rawMarkup = marked(this.props.children.toString(), {sanitize: true});
198 | return { __html: rawMarkup };
199 | },
200 |
201 | render: function() {
202 | return (
203 |
204 |
205 | {this.props.author}
206 |
207 |
208 |
209 | );
210 | }
211 | });
212 |
213 | // tutorial8.js
214 | var data = [
215 | {author: "Pete Hunt", text: "This is one comment"},
216 | {author: "Jordan Walke", text: "This is *another* comment"}
217 | ];
218 |
219 | // tutorial11.js
220 | ReactDOM.render(
221 | ,
222 | document.getElementById("content")
223 | );
224 | '
225 | ))
226 | ) %>>%
227 | attachDependencies(list(
228 | html_dependency_react(),
229 | htmlDependency(
230 | name = "jquery"
231 | ,version = "2.2.0"
232 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.0/")
233 | ,script = c("jquery.min.js")
234 | ),
235 | htmlDependency(
236 | name = "marked"
237 | ,version = "0.3.5"
238 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/marked/0.3.5/")
239 | ,script = c("marked.min.js")
240 | )
241 | )) %>>%
242 | browsable()
243 |
244 |
--------------------------------------------------------------------------------
/tutorial14.R:
--------------------------------------------------------------------------------
1 | library(htmltools)
2 | library(pipeR)
3 |
4 | tagList(
5 | tags$div(
6 | id = "content"
7 | )
8 | ,tags$script(type = "text/babel"
9 | ,'
10 | // tutorial14.js
11 | var CommentBox = React.createClass({
12 | loadCommentsFromServer: function() {
13 | $.ajax({
14 | url: this.props.url,
15 | dataType: "json",
16 | success: function(data) {
17 | this.setState({data: data});
18 | }.bind(this),
19 | error: function(xhr, status, err) {
20 | console.error(this.props.url, status, err.toString());
21 | }.bind(this)
22 | });
23 | },
24 | getInitialState: function() {
25 | return {data: []};
26 | },
27 | componentDidMount: function() {
28 | this.loadCommentsFromServer();
29 | setInterval(this.loadCommentsFromServer, this.props.pollInterval);
30 | },
31 | render: function() {
32 | return (
33 |
34 |
Comments
35 |
36 |
37 |
38 | );
39 | }
40 | });
41 |
42 | // tutorial10.js
43 | var CommentList = React.createClass({
44 | render: function() {
45 | var commentNodes = this.props.data.map(function(comment){
46 | return (
47 |
48 | {comment.text}
49 |
50 | )
51 | });
52 | return (
53 |
54 | {commentNodes}
55 |
56 | );
57 | }
58 | });
59 |
60 | var CommentForm = React.createClass({
61 | render: function() {
62 | return (
63 |
64 | Hello, world! I am a CommentForm.
65 |
66 | );
67 | }
68 | });
69 |
70 | // tutorial7.js
71 | var Comment = React.createClass({
72 | rawMarkup: function() {
73 | var rawMarkup = marked(this.props.children.toString(), {sanitize: true});
74 | return { __html: rawMarkup };
75 | },
76 |
77 | render: function() {
78 | return (
79 |
80 |
81 | {this.props.author}
82 |
83 |
84 |
85 | );
86 | }
87 | });
88 |
89 | // tutorial8.js
90 | var data = [
91 | {author: "Pete Hunt", text: "This is one comment"},
92 | {author: "Jordan Walke", text: "This is *another* comment"}
93 | ];
94 |
95 | // tutorial14.js
96 | ReactDOM.render(
97 | ,
98 | document.getElementById("content")
99 | );
100 |
101 | ' %>>% HTML
102 | )
103 | ) %>>%
104 | attachDependencies(list(
105 | htmlDependency(
106 | name = "react"
107 | ,version = "0.14.8"
108 | ,src = c(paste0(getwd(),"/build"))
109 | ,script = c("react.min.js","react-dom.min.js")
110 | )
111 | ,htmlDependency(
112 | name = "babel-browser"
113 | ,version = "5.8.23"
114 | ,src = c(href="http://cdnjs.cloudflare.com/ajax/libs/babel-core/5.8.23")
115 | ,script = c("browser.min.js")
116 | )
117 | ,htmlDependency(
118 | name = "jquery"
119 | ,version = "2.2.0"
120 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.0/")
121 | ,script = c("jquery.min.js")
122 | )
123 | ,htmlDependency(
124 | name = "marked"
125 | ,version = "0.3.5"
126 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/marked/0.3.5/")
127 | ,script = c("marked.min.js")
128 | )
129 | )) %>>%
130 | html_print
131 |
132 |
133 |
134 | # use reactR --------------------------------------------------------------
135 | library(htmltools)
136 | library(reactR)
137 |
138 | tagList(
139 | tags$div(id = "content"),
140 | tags$script(babel_transform(
141 | '// tutorial14.js
142 | var CommentBox = React.createClass({
143 | loadCommentsFromServer: function() {
144 | $.ajax({
145 | url: this.props.url,
146 | dataType: "json",
147 | success: function(data) {
148 | this.setState({data: data});
149 | }.bind(this),
150 | error: function(xhr, status, err) {
151 | console.error(this.props.url, status, err.toString());
152 | }.bind(this)
153 | });
154 | },
155 | getInitialState: function() {
156 | return {data: []};
157 | },
158 | componentDidMount: function() {
159 | this.loadCommentsFromServer();
160 | setInterval(this.loadCommentsFromServer, this.props.pollInterval);
161 | },
162 | render: function() {
163 | return (
164 |
165 |
Comments
166 |
167 |
168 |
169 | );
170 | }
171 | });
172 |
173 | // tutorial10.js
174 | var CommentList = React.createClass({
175 | render: function() {
176 | var commentNodes = this.props.data.map(function(comment){
177 | return (
178 |
179 | {comment.text}
180 |
181 | )
182 | });
183 | return (
184 |
185 | {commentNodes}
186 |
187 | );
188 | }
189 | });
190 |
191 | var CommentForm = React.createClass({
192 | render: function() {
193 | return (
194 |
195 | Hello, world! I am a CommentForm.
196 |
197 | );
198 | }
199 | });
200 |
201 | // tutorial7.js
202 | var Comment = React.createClass({
203 | rawMarkup: function() {
204 | var rawMarkup = marked(this.props.children.toString(), {sanitize: true});
205 | return { __html: rawMarkup };
206 | },
207 |
208 | render: function() {
209 | return (
210 |
211 |
212 | {this.props.author}
213 |
214 |
215 |
216 | );
217 | }
218 | });
219 |
220 | // tutorial8.js
221 | var data = [
222 | {author: "Pete Hunt", text: "This is one comment"},
223 | {author: "Jordan Walke", text: "This is *another* comment"}
224 | ];
225 |
226 | // tutorial14.js
227 | ReactDOM.render(
228 | ,
229 | document.getElementById("content")
230 | );
231 | '
232 | ))
233 | ) %>>%
234 | attachDependencies(list(
235 | html_dependency_react(),
236 | htmlDependency(
237 | name = "jquery"
238 | ,version = "2.2.0"
239 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.0/")
240 | ,script = c("jquery.min.js")
241 | ),
242 | htmlDependency(
243 | name = "marked"
244 | ,version = "0.3.5"
245 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/marked/0.3.5/")
246 | ,script = c("marked.min.js")
247 | )
248 | )) %>>%
249 | browsable()
250 |
251 |
--------------------------------------------------------------------------------
/tutorial2.R:
--------------------------------------------------------------------------------
1 | library(htmltools)
2 | library(pipeR)
3 |
4 | tagList(
5 | tags$div(
6 | id = "content"
7 | )
8 | ,tags$script(type = "text/babel"
9 | ,'
10 | // tutorial1.js
11 | var CommentBox = React.createClass({
12 | render: function() {
13 | return (
14 |
15 | Hello, world! I am a CommentBox.
16 |
17 | );
18 | }
19 | });
20 |
21 | // tutorial2.js
22 | var CommentList = React.createClass({
23 | render: function() {
24 | return (
25 |
26 | Hello, world! I am a CommentList.
27 |
28 | );
29 | }
30 | });
31 |
32 | var CommentForm = React.createClass({
33 | render: function() {
34 | return (
35 |
36 | Hello, world! I am a CommentForm.
37 |
38 | );
39 | }
40 | });
41 |
42 | ReactDOM.render(
43 | ,
44 | document.getElementById("content")
45 | );
46 | ' %>>% HTML
47 | )
48 | ) %>>%
49 | attachDependencies(list(
50 | htmlDependency(
51 | name = "react"
52 | ,version = "0.14.8"
53 | ,src = c(paste0(getwd(),"/build"))
54 | ,script = c("react.min.js","react-dom.min.js")
55 | )
56 | ,htmlDependency(
57 | name = "babel-browser"
58 | ,version = "5.8.23"
59 | ,src = c(href="http://cdnjs.cloudflare.com/ajax/libs/babel-core/5.8.23")
60 | ,script = c("browser.min.js")
61 | )
62 | ,htmlDependency(
63 | name = "jquery"
64 | ,version = "2.2.0"
65 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.0/")
66 | ,script = c("jquery.min.js")
67 | )
68 | ,htmlDependency(
69 | name = "marked"
70 | ,version = "0.3.5"
71 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/marked/0.3.5/")
72 | ,script = c("marked.min.js")
73 | )
74 | )) %>>%
75 | html_print
76 |
77 |
78 | # use reactR --------------------------------------------------------------
79 | library(htmltools)
80 | library(reactR)
81 |
82 | tagList(
83 | tags$div(id = "content"),
84 | tags$script(babel_transform(
85 | '
86 | // tutorial1.js
87 | var CommentBox = React.createClass({
88 | render: function() {
89 | return (
90 |
91 | Hello, world! I am a CommentBox.
92 |
93 | );
94 | }
95 | });
96 |
97 | // tutorial2.js
98 | var CommentList = React.createClass({
99 | render: function() {
100 | return (
101 |
102 | Hello, world! I am a CommentList.
103 |
104 | );
105 | }
106 | });
107 |
108 | var CommentForm = React.createClass({
109 | render: function() {
110 | return (
111 |
112 | Hello, world! I am a CommentForm.
113 |
114 | );
115 | }
116 | });
117 |
118 | ReactDOM.render(
119 | ,
120 | document.getElementById("content")
121 | );
122 | '
123 | ))
124 | ) %>>%
125 | attachDependencies(list(
126 | html_dependency_react(),
127 | htmlDependency(
128 | name = "jquery"
129 | ,version = "2.2.0"
130 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.0/")
131 | ,script = c("jquery.min.js")
132 | ),
133 | htmlDependency(
134 | name = "marked"
135 | ,version = "0.3.5"
136 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/marked/0.3.5/")
137 | ,script = c("marked.min.js")
138 | )
139 | )) %>>%
140 | browsable()
141 |
142 |
--------------------------------------------------------------------------------
/tutorial3.R:
--------------------------------------------------------------------------------
1 | library(htmltools)
2 | library(pipeR)
3 |
4 | tagList(
5 | tags$div(
6 | id = "content"
7 | )
8 | ,tags$script(type = "text/babel"
9 | ,'
10 | // tutorial3.js
11 | var CommentBox = React.createClass({
12 | render: function() {
13 | return (
14 |
15 |
Comments
16 |
17 |
18 |
19 | );
20 | }
21 | });
22 |
23 | // tutorial2.js
24 | var CommentList = React.createClass({
25 | render: function() {
26 | return (
27 |
28 | Hello, world! I am a CommentList.
29 |
30 | );
31 | }
32 | });
33 |
34 | var CommentForm = React.createClass({
35 | render: function() {
36 | return (
37 |
38 | Hello, world! I am a CommentForm.
39 |
40 | );
41 | }
42 | });
43 |
44 | ReactDOM.render(
45 | ,
46 | document.getElementById("content")
47 | );
48 |
49 | ' %>>% HTML
50 | )
51 | ) %>>%
52 | attachDependencies(list(
53 | htmlDependency(
54 | name = "react"
55 | ,version = "0.14.8"
56 | ,src = c(paste0(getwd(),"/build"))
57 | ,script = c("react.min.js","react-dom.min.js")
58 | )
59 | ,htmlDependency(
60 | name = "babel-browser"
61 | ,version = "5.8.23"
62 | ,src = c(href="http://cdnjs.cloudflare.com/ajax/libs/babel-core/5.8.23")
63 | ,script = c("browser.min.js")
64 | )
65 | ,htmlDependency(
66 | name = "jquery"
67 | ,version = "2.2.0"
68 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.0/")
69 | ,script = c("jquery.min.js")
70 | )
71 | ,htmlDependency(
72 | name = "marked"
73 | ,version = "0.3.5"
74 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/marked/0.3.5/")
75 | ,script = c("marked.min.js")
76 | )
77 | )) %>>%
78 | html_print
79 |
80 |
81 | # use reactR --------------------------------------------------------------
82 | library(htmltools)
83 | library(reactR)
84 |
85 | tagList(
86 | tags$div(id = "content"),
87 | tags$script(babel_transform(
88 | '
89 | // tutorial3.js
90 | var CommentBox = React.createClass({
91 | render: function() {
92 | return (
93 |
94 |
Comments
95 |
96 |
97 |
98 | );
99 | }
100 | });
101 |
102 | // tutorial2.js
103 | var CommentList = React.createClass({
104 | render: function() {
105 | return (
106 |
107 | Hello, world! I am a CommentList.
108 |
109 | );
110 | }
111 | });
112 |
113 | var CommentForm = React.createClass({
114 | render: function() {
115 | return (
116 |
117 | Hello, world! I am a CommentForm.
118 |
119 | );
120 | }
121 | });
122 |
123 | ReactDOM.render(
124 | ,
125 | document.getElementById("content")
126 | );
127 | '
128 |
129 | ))
130 | ) %>>%
131 | attachDependencies(list(
132 | html_dependency_react(),
133 | htmlDependency(
134 | name = "jquery"
135 | ,version = "2.2.0"
136 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.0/")
137 | ,script = c("jquery.min.js")
138 | ),
139 | htmlDependency(
140 | name = "marked"
141 | ,version = "0.3.5"
142 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/marked/0.3.5/")
143 | ,script = c("marked.min.js")
144 | )
145 | )) %>>%
146 | browsable()
147 |
148 |
--------------------------------------------------------------------------------
/tutorial4.R:
--------------------------------------------------------------------------------
1 | library(htmltools)
2 | library(pipeR)
3 |
4 | tagList(
5 | tags$div(
6 | id = "content"
7 | )
8 | ,tags$script(type = "text/babel"
9 | ,'
10 | // tutorial3.js
11 | var CommentBox = React.createClass({
12 | render: function() {
13 | return (
14 |
15 |
Comments
16 |
17 |
18 |
19 | );
20 | }
21 | });
22 |
23 | // tutorial4.js
24 | var CommentList = React.createClass({
25 | render: function() {
26 | return (
27 |
28 | This is one comment
29 | This is *another* comment
30 |
31 | );
32 | }
33 | });
34 |
35 | var CommentForm = React.createClass({
36 | render: function() {
37 | return (
38 |
39 | Hello, world! I am a CommentForm.
40 |
41 | );
42 | }
43 | });
44 |
45 | // tutorial5.js
46 | var Comment = React.createClass({
47 | render: function() {
48 | return (
49 |
50 |
51 | {this.props.author}
52 |
53 | {this.props.children}
54 |
55 | );
56 | }
57 | });
58 |
59 | ReactDOM.render(
60 | ,
61 | document.getElementById("content")
62 | );
63 |
64 | ' %>>% HTML
65 | )
66 | ) %>>%
67 | attachDependencies(list(
68 | htmlDependency(
69 | name = "react"
70 | ,version = "0.14.8"
71 | ,src = c(paste0(getwd(),"/build"))
72 | ,script = c("react.min.js","react-dom.min.js")
73 | )
74 | ,htmlDependency(
75 | name = "babel-browser"
76 | ,version = "5.8.23"
77 | ,src = c(href="http://cdnjs.cloudflare.com/ajax/libs/babel-core/5.8.23")
78 | ,script = c("browser.min.js")
79 | )
80 | ,htmlDependency(
81 | name = "jquery"
82 | ,version = "2.2.0"
83 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.0/")
84 | ,script = c("jquery.min.js")
85 | )
86 | ,htmlDependency(
87 | name = "marked"
88 | ,version = "0.3.5"
89 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/marked/0.3.5/")
90 | ,script = c("marked.min.js")
91 | )
92 | )) %>>%
93 | html_print
94 |
95 |
96 | # use reactR --------------------------------------------------------------
97 | library(htmltools)
98 | library(reactR)
99 |
100 | tagList(
101 | tags$div(id = "content"),
102 | tags$script(babel_transform(
103 | '// tutorial3.js
104 | var CommentBox = React.createClass({
105 | render: function() {
106 | return (
107 |
108 |
Comments
109 |
110 |
111 |
112 | );
113 | }
114 | });
115 |
116 | // tutorial4.js
117 | var CommentList = React.createClass({
118 | render: function() {
119 | return (
120 |
121 | This is one comment
122 | This is *another* comment
123 |
124 | );
125 | }
126 | });
127 |
128 | var CommentForm = React.createClass({
129 | render: function() {
130 | return (
131 |
132 | Hello, world! I am a CommentForm.
133 |
134 | );
135 | }
136 | });
137 |
138 | // tutorial5.js
139 | var Comment = React.createClass({
140 | render: function() {
141 | return (
142 |
143 |
144 | {this.props.author}
145 |
146 | {this.props.children}
147 |
148 | );
149 | }
150 | });
151 |
152 | ReactDOM.render(
153 | ,
154 | document.getElementById("content")
155 | );'
156 | ))
157 | ) %>>%
158 | attachDependencies(list(
159 | html_dependency_react(),
160 | htmlDependency(
161 | name = "jquery"
162 | ,version = "2.2.0"
163 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.0/")
164 | ,script = c("jquery.min.js")
165 | ),
166 | htmlDependency(
167 | name = "marked"
168 | ,version = "0.3.5"
169 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/marked/0.3.5/")
170 | ,script = c("marked.min.js")
171 | )
172 | )) %>>%
173 | browsable()
174 |
175 |
--------------------------------------------------------------------------------
/tutorial5.R:
--------------------------------------------------------------------------------
1 | library(htmltools)
2 | library(pipeR)
3 |
4 | tagList(
5 | tags$div(
6 | id = "content"
7 | )
8 | ,tags$script(type = "text/babel"
9 | ,'
10 | // tutorial3.js
11 | var CommentBox = React.createClass({
12 | render: function() {
13 | return (
14 |
15 |
Comments
16 |
17 |
18 |
19 | );
20 | }
21 | });
22 |
23 | // tutorial4.js
24 | var CommentList = React.createClass({
25 | render: function() {
26 | return (
27 |
28 | This is one comment
29 | This is *another* comment
30 |
31 | );
32 | }
33 | });
34 |
35 | var CommentForm = React.createClass({
36 | render: function() {
37 | return (
38 |
39 | Hello, world! I am a CommentForm.
40 |
41 | );
42 | }
43 | });
44 |
45 | // tutorial5.js
46 | var Comment = React.createClass({
47 | render: function() {
48 | return (
49 |
50 |
51 | {this.props.author}
52 |
53 | {this.props.children}
54 |
55 | );
56 | }
57 | });
58 |
59 | ReactDOM.render(
60 | ,
61 | document.getElementById("content")
62 | );
63 |
64 | ' %>>% HTML
65 | )
66 | ) %>>%
67 | attachDependencies(list(
68 | htmlDependency(
69 | name = "react"
70 | ,version = "0.14.8"
71 | ,src = c(paste0(getwd(),"/build"))
72 | ,script = c("react.min.js","react-dom.min.js")
73 | )
74 | ,htmlDependency(
75 | name = "babel-browser"
76 | ,version = "5.8.23"
77 | ,src = c(href="http://cdnjs.cloudflare.com/ajax/libs/babel-core/5.8.23")
78 | ,script = c("browser.min.js")
79 | )
80 | ,htmlDependency(
81 | name = "jquery"
82 | ,version = "2.2.0"
83 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.0/")
84 | ,script = c("jquery.min.js")
85 | )
86 | ,htmlDependency(
87 | name = "marked"
88 | ,version = "0.3.5"
89 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/marked/0.3.5/")
90 | ,script = c("marked.min.js")
91 | )
92 | )) %>>%
93 | html_print
94 |
95 | # use reactR --------------------------------------------------------------
96 | library(htmltools)
97 | library(reactR)
98 |
99 |
100 | tagList(
101 | tags$div(id = "content"),
102 | tags$script(babel_transform(
103 | '// tutorial3.js
104 | var CommentBox = React.createClass({
105 | render: function() {
106 | return (
107 |
108 |
Comments
109 |
110 |
111 |
112 | );
113 | }
114 | });
115 |
116 | // tutorial4.js
117 | var CommentList = React.createClass({
118 | render: function() {
119 | return (
120 |
121 | This is one comment
122 | This is *another* comment
123 |
124 | );
125 | }
126 | });
127 |
128 | var CommentForm = React.createClass({
129 | render: function() {
130 | return (
131 |
132 | Hello, world! I am a CommentForm.
133 |
134 | );
135 | }
136 | });
137 |
138 | // tutorial5.js
139 | var Comment = React.createClass({
140 | render: function() {
141 | return (
142 |
143 |
144 | {this.props.author}
145 |
146 | {this.props.children}
147 |
148 | );
149 | }
150 | });
151 |
152 | ReactDOM.render(
153 | ,
154 | document.getElementById("content")
155 | );
156 | '
157 | ))
158 | ) %>>%
159 | attachDependencies(list(
160 | html_dependency_react(),
161 | htmlDependency(
162 | name = "jquery"
163 | ,version = "2.2.0"
164 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.0/")
165 | ,script = c("jquery.min.js")
166 | ),
167 | htmlDependency(
168 | name = "marked"
169 | ,version = "0.3.5"
170 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/marked/0.3.5/")
171 | ,script = c("marked.min.js")
172 | )
173 | )) %>>%
174 | browsable()
175 |
176 |
--------------------------------------------------------------------------------
/tutorial6.R:
--------------------------------------------------------------------------------
1 | library(htmltools)
2 | library(pipeR)
3 |
4 | tagList(
5 | tags$div(
6 | id = "content"
7 | )
8 | ,tags$script(type = "text/babel"
9 | ,'
10 | // tutorial3.js
11 | var CommentBox = React.createClass({
12 | render: function() {
13 | return (
14 |
15 |
Comments
16 |
17 |
18 |
19 | );
20 | }
21 | });
22 |
23 | // tutorial4.js
24 | var CommentList = React.createClass({
25 | render: function() {
26 | return (
27 |
28 | This is one comment
29 | This is *another* comment
30 |
31 | );
32 | }
33 | });
34 |
35 | var CommentForm = React.createClass({
36 | render: function() {
37 | return (
38 |
39 | Hello, world! I am a CommentForm.
40 |
41 | );
42 | }
43 | });
44 |
45 | // tutorial6.js
46 | var Comment = React.createClass({
47 | render: function() {
48 | return (
49 |
50 |
51 | {this.props.author}
52 |
53 | {marked(this.props.children.toString())}
54 |
55 | );
56 | }
57 | });
58 |
59 | ReactDOM.render(
60 | ,
61 | document.getElementById("content")
62 | );
63 |
64 | ' %>>% HTML
65 | )
66 | ) %>>%
67 | attachDependencies(list(
68 | htmlDependency(
69 | name = "react"
70 | ,version = "0.14.8"
71 | ,src = c(paste0(getwd(),"/build"))
72 | ,script = c("react.min.js","react-dom.min.js")
73 | )
74 | ,htmlDependency(
75 | name = "babel-browser"
76 | ,version = "5.8.23"
77 | ,src = c(href="http://cdnjs.cloudflare.com/ajax/libs/babel-core/5.8.23")
78 | ,script = c("browser.min.js")
79 | )
80 | ,htmlDependency(
81 | name = "jquery"
82 | ,version = "2.2.0"
83 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.0/")
84 | ,script = c("jquery.min.js")
85 | )
86 | ,htmlDependency(
87 | name = "marked"
88 | ,version = "0.3.5"
89 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/marked/0.3.5/")
90 | ,script = c("marked.min.js")
91 | )
92 | )) %>>%
93 | html_print
94 |
95 |
96 | # use reactR --------------------------------------------------------------
97 | library(htmltools)
98 | library(reactR)
99 |
100 | tagList(
101 | tags$div(id = "content"),
102 | tags$script(babel_transform(
103 | '// tutorial3.js
104 | var CommentBox = React.createClass({
105 | render: function() {
106 | return (
107 |
108 |
Comments
109 |
110 |
111 |
112 | );
113 | }
114 | });
115 |
116 | // tutorial4.js
117 | var CommentList = React.createClass({
118 | render: function() {
119 | return (
120 |
121 | This is one comment
122 | This is *another* comment
123 |
124 | );
125 | }
126 | });
127 |
128 | var CommentForm = React.createClass({
129 | render: function() {
130 | return (
131 |
132 | Hello, world! I am a CommentForm.
133 |
134 | );
135 | }
136 | });
137 |
138 | // tutorial6.js
139 | var Comment = React.createClass({
140 | render: function() {
141 | return (
142 |
143 |
144 | {this.props.author}
145 |
146 | {marked(this.props.children.toString())}
147 |
148 | );
149 | }
150 | });
151 |
152 | ReactDOM.render(
153 | ,
154 | document.getElementById("content")
155 | );
156 | '
157 | ))
158 | ) %>>%
159 | attachDependencies(list(
160 | html_dependency_react(),
161 | htmlDependency(
162 | name = "jquery"
163 | ,version = "2.2.0"
164 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.0/")
165 | ,script = c("jquery.min.js")
166 | ),
167 | htmlDependency(
168 | name = "marked"
169 | ,version = "0.3.5"
170 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/marked/0.3.5/")
171 | ,script = c("marked.min.js")
172 | )
173 | )) %>>%
174 | browsable()
175 |
176 |
--------------------------------------------------------------------------------
/tutorial7.R:
--------------------------------------------------------------------------------
1 | library(htmltools)
2 | library(pipeR)
3 |
4 | tagList(
5 | tags$div(
6 | id = "content"
7 | )
8 | ,tags$script(type = "text/babel"
9 | ,'
10 | // tutorial3.js
11 | var CommentBox = React.createClass({
12 | render: function() {
13 | return (
14 |
15 |
Comments
16 |
17 |
18 |
19 | );
20 | }
21 | });
22 |
23 | // tutorial4.js
24 | var CommentList = React.createClass({
25 | render: function() {
26 | return (
27 |
28 | This is one comment
29 | This is *another* comment
30 |
31 | );
32 | }
33 | });
34 |
35 | var CommentForm = React.createClass({
36 | render: function() {
37 | return (
38 |
39 | Hello, world! I am a CommentForm.
40 |
41 | );
42 | }
43 | });
44 |
45 | // tutorial7.js
46 | var Comment = React.createClass({
47 | rawMarkup: function() {
48 | var rawMarkup = marked(this.props.children.toString(), {sanitize: true});
49 | return { __html: rawMarkup };
50 | },
51 |
52 | render: function() {
53 | return (
54 |
55 |
56 | {this.props.author}
57 |
58 |
59 |
60 | );
61 | }
62 | });
63 |
64 | ReactDOM.render(
65 | ,
66 | document.getElementById("content")
67 | );
68 |
69 | ' %>>% HTML
70 | )
71 | ) %>>%
72 | attachDependencies(list(
73 | htmlDependency(
74 | name = "react"
75 | ,version = "0.14.8"
76 | ,src = c(paste0(getwd(),"/build"))
77 | ,script = c("react.min.js","react-dom.min.js")
78 | )
79 | ,htmlDependency(
80 | name = "babel-browser"
81 | ,version = "5.8.23"
82 | ,src = c(href="http://cdnjs.cloudflare.com/ajax/libs/babel-core/5.8.23")
83 | ,script = c("browser.min.js")
84 | )
85 | ,htmlDependency(
86 | name = "jquery"
87 | ,version = "2.2.0"
88 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.0/")
89 | ,script = c("jquery.min.js")
90 | )
91 | ,htmlDependency(
92 | name = "marked"
93 | ,version = "0.3.5"
94 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/marked/0.3.5/")
95 | ,script = c("marked.min.js")
96 | )
97 | )) %>>%
98 | html_print
99 |
100 |
101 |
102 |
103 | # use reactR --------------------------------------------------------------
104 | library(htmltools)
105 | library(reactR)
106 |
107 | tagList(
108 | tags$div(id = "content"),
109 | tags$script(babel_transform(
110 | '// tutorial3.js
111 | var CommentBox = React.createClass({
112 | render: function() {
113 | return (
114 |
115 |
Comments
116 |
117 |
118 |
119 | );
120 | }
121 | });
122 |
123 | // tutorial4.js
124 | var CommentList = React.createClass({
125 | render: function() {
126 | return (
127 |
128 | This is one comment
129 | This is *another* comment
130 |
131 | );
132 | }
133 | });
134 |
135 | var CommentForm = React.createClass({
136 | render: function() {
137 | return (
138 |
139 | Hello, world! I am a CommentForm.
140 |
141 | );
142 | }
143 | });
144 |
145 | // tutorial7.js
146 | var Comment = React.createClass({
147 | rawMarkup: function() {
148 | var rawMarkup = marked(this.props.children.toString(), {sanitize: true});
149 | return { __html: rawMarkup };
150 | },
151 |
152 | render: function() {
153 | return (
154 |
155 |
156 | {this.props.author}
157 |
158 |
159 |
160 | );
161 | }
162 | });
163 |
164 | ReactDOM.render(
165 | ,
166 | document.getElementById("content")
167 | );
168 | '
169 | ))
170 | ) %>>%
171 | attachDependencies(list(
172 | html_dependency_react(),
173 | htmlDependency(
174 | name = "jquery"
175 | ,version = "2.2.0"
176 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.0/")
177 | ,script = c("jquery.min.js")
178 | ),
179 | htmlDependency(
180 | name = "marked"
181 | ,version = "0.3.5"
182 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/marked/0.3.5/")
183 | ,script = c("marked.min.js")
184 | )
185 | )) %>>%
186 | browsable()
187 |
188 |
--------------------------------------------------------------------------------
/tutorial8.R:
--------------------------------------------------------------------------------
1 | library(htmltools)
2 | library(pipeR)
3 |
4 | tagList(
5 | tags$div(
6 | id = "content"
7 | )
8 | ,tags$script(type = "text/babel"
9 | ,'
10 | // tutorial3.js
11 | var CommentBox = React.createClass({
12 | render: function() {
13 | return (
14 |
15 |
Comments
16 |
17 |
18 |
19 | );
20 | }
21 | });
22 |
23 | // tutorial4.js
24 | var CommentList = React.createClass({
25 | render: function() {
26 | return (
27 |
28 | This is one comment
29 | This is *another* comment
30 |
31 | );
32 | }
33 | });
34 |
35 | var CommentForm = React.createClass({
36 | render: function() {
37 | return (
38 |
39 | Hello, world! I am a CommentForm.
40 |
41 | );
42 | }
43 | });
44 |
45 | // tutorial7.js
46 | var Comment = React.createClass({
47 | rawMarkup: function() {
48 | var rawMarkup = marked(this.props.children.toString(), {sanitize: true});
49 | return { __html: rawMarkup };
50 | },
51 |
52 | render: function() {
53 | return (
54 |
55 |
56 | {this.props.author}
57 |
58 |
59 |
60 | );
61 | }
62 | });
63 |
64 | // tutorial8.js
65 | var data = [
66 | {author: "Pete Hunt", text: "This is one comment"},
67 | {author: "Jordan Walke", text: "This is *another* comment"}
68 | ];
69 |
70 | ReactDOM.render(
71 | ,
72 | document.getElementById("content")
73 | );
74 |
75 | ' %>>% HTML
76 | )
77 | ) %>>%
78 | attachDependencies(list(
79 | htmlDependency(
80 | name = "react"
81 | ,version = "0.14.8"
82 | ,src = c(paste0(getwd(),"/build"))
83 | ,script = c("react.min.js","react-dom.min.js")
84 | )
85 | ,htmlDependency(
86 | name = "babel-browser"
87 | ,version = "5.8.23"
88 | ,src = c(href="http://cdnjs.cloudflare.com/ajax/libs/babel-core/5.8.23")
89 | ,script = c("browser.min.js")
90 | )
91 | ,htmlDependency(
92 | name = "jquery"
93 | ,version = "2.2.0"
94 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.0/")
95 | ,script = c("jquery.min.js")
96 | )
97 | ,htmlDependency(
98 | name = "marked"
99 | ,version = "0.3.5"
100 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/marked/0.3.5/")
101 | ,script = c("marked.min.js")
102 | )
103 | )) %>>%
104 | html_print
105 |
106 |
107 |
108 | # use reactR --------------------------------------------------------------
109 | library(htmltools)
110 | library(reactR)
111 |
112 | tagList(
113 | tags$div(id = "content"),
114 | tags$script(babel_transform(
115 | '// tutorial3.js
116 | var CommentBox = React.createClass({
117 | render: function() {
118 | return (
119 |
120 |
Comments
121 |
122 |
123 |
124 | );
125 | }
126 | });
127 |
128 | // tutorial4.js
129 | var CommentList = React.createClass({
130 | render: function() {
131 | return (
132 |
133 | This is one comment
134 | This is *another* comment
135 |
136 | );
137 | }
138 | });
139 |
140 | var CommentForm = React.createClass({
141 | render: function() {
142 | return (
143 |
144 | Hello, world! I am a CommentForm.
145 |
146 | );
147 | }
148 | });
149 |
150 | // tutorial7.js
151 | var Comment = React.createClass({
152 | rawMarkup: function() {
153 | var rawMarkup = marked(this.props.children.toString(), {sanitize: true});
154 | return { __html: rawMarkup };
155 | },
156 |
157 | render: function() {
158 | return (
159 |
160 |
161 | {this.props.author}
162 |
163 |
164 |
165 | );
166 | }
167 | });
168 |
169 | // tutorial8.js
170 | var data = [
171 | {author: "Pete Hunt", text: "This is one comment"},
172 | {author: "Jordan Walke", text: "This is *another* comment"}
173 | ];
174 |
175 | ReactDOM.render(
176 | ,
177 | document.getElementById("content")
178 | );
179 | '
180 | ))
181 | ) %>>%
182 | attachDependencies(list(
183 | html_dependency_react(),
184 | htmlDependency(
185 | name = "jquery"
186 | ,version = "2.2.0"
187 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.0/")
188 | ,script = c("jquery.min.js")
189 | ),
190 | htmlDependency(
191 | name = "marked"
192 | ,version = "0.3.5"
193 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/marked/0.3.5/")
194 | ,script = c("marked.min.js")
195 | )
196 | )) %>>%
197 | browsable()
198 |
199 |
--------------------------------------------------------------------------------
/tutorial9.R:
--------------------------------------------------------------------------------
1 | library(htmltools)
2 | library(pipeR)
3 |
4 | tagList(
5 | tags$div(
6 | id = "content"
7 | )
8 | ,tags$script(type = "text/babel"
9 | ,'
10 | // tutorial9.js
11 | var CommentBox = React.createClass({
12 | render: function() {
13 | return (
14 |
15 |
Comments
16 |
17 |
18 |
19 | );
20 | }
21 | });
22 |
23 | // tutorial4.js
24 | var CommentList = React.createClass({
25 | render: function() {
26 | return (
27 |
28 | This is one comment
29 | This is *another* comment
30 |
31 | );
32 | }
33 | });
34 |
35 | var CommentForm = React.createClass({
36 | render: function() {
37 | return (
38 |
39 | Hello, world! I am a CommentForm.
40 |
41 | );
42 | }
43 | });
44 |
45 | // tutorial7.js
46 | var Comment = React.createClass({
47 | rawMarkup: function() {
48 | var rawMarkup = marked(this.props.children.toString(), {sanitize: true});
49 | return { __html: rawMarkup };
50 | },
51 |
52 | render: function() {
53 | return (
54 |
55 |
56 | {this.props.author}
57 |
58 |
59 |
60 | );
61 | }
62 | });
63 |
64 | // tutorial8.js
65 | var data = [
66 | {author: "Pete Hunt", text: "This is one comment"},
67 | {author: "Jordan Walke", text: "This is *another* comment"}
68 | ];
69 |
70 | ReactDOM.render(
71 | ,
72 | document.getElementById("content")
73 | );
74 |
75 | ' %>>% HTML
76 | )
77 | ) %>>%
78 | attachDependencies(list(
79 | htmlDependency(
80 | name = "react"
81 | ,version = "0.14.8"
82 | ,src = c(paste0(getwd(),"/build"))
83 | ,script = c("react.min.js","react-dom.min.js")
84 | )
85 | ,htmlDependency(
86 | name = "babel-browser"
87 | ,version = "5.8.23"
88 | ,src = c(href="http://cdnjs.cloudflare.com/ajax/libs/babel-core/5.8.23")
89 | ,script = c("browser.min.js")
90 | )
91 | ,htmlDependency(
92 | name = "jquery"
93 | ,version = "2.2.0"
94 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.0/")
95 | ,script = c("jquery.min.js")
96 | )
97 | ,htmlDependency(
98 | name = "marked"
99 | ,version = "0.3.5"
100 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/marked/0.3.5/")
101 | ,script = c("marked.min.js")
102 | )
103 | )) %>>%
104 | html_print
105 |
106 |
107 |
108 |
109 | # use reactR --------------------------------------------------------------
110 | library(htmltools)
111 | library(reactR)
112 |
113 | tagList(
114 | tags$div(id = "content"),
115 | tags$script(babel_transform(
116 | '// tutorial9.js
117 | var CommentBox = React.createClass({
118 | render: function() {
119 | return (
120 |
121 |
Comments
122 |
123 |
124 |
125 | );
126 | }
127 | });
128 |
129 | // tutorial4.js
130 | var CommentList = React.createClass({
131 | render: function() {
132 | return (
133 |
134 | This is one comment
135 | This is *another* comment
136 |
137 | );
138 | }
139 | });
140 |
141 | var CommentForm = React.createClass({
142 | render: function() {
143 | return (
144 |
145 | Hello, world! I am a CommentForm.
146 |
147 | );
148 | }
149 | });
150 |
151 | // tutorial7.js
152 | var Comment = React.createClass({
153 | rawMarkup: function() {
154 | var rawMarkup = marked(this.props.children.toString(), {sanitize: true});
155 | return { __html: rawMarkup };
156 | },
157 |
158 | render: function() {
159 | return (
160 |
161 |
162 | {this.props.author}
163 |
164 |
165 |
166 | );
167 | }
168 | });
169 |
170 | // tutorial8.js
171 | var data = [
172 | {author: "Pete Hunt", text: "This is one comment"},
173 | {author: "Jordan Walke", text: "This is *another* comment"}
174 | ];
175 |
176 | ReactDOM.render(
177 | ,
178 | document.getElementById("content")
179 | );
180 | '
181 | ))
182 | ) %>>%
183 | attachDependencies(list(
184 | html_dependency_react(),
185 | htmlDependency(
186 | name = "jquery"
187 | ,version = "2.2.0"
188 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.0/")
189 | ,script = c("jquery.min.js")
190 | ),
191 | htmlDependency(
192 | name = "marked"
193 | ,version = "0.3.5"
194 | ,src = c(href = "http://cdnjs.cloudflare.com/ajax/libs/marked/0.3.5/")
195 | ,script = c("marked.min.js")
196 | )
197 | )) %>>%
198 | browsable()
199 |
200 |
--------------------------------------------------------------------------------