Count value is Birds.
Count value is Birds.
Count value is Fish.
Count value is Fish.
'
+ );
+
+ container.querySelector('#btn').click();
+
+ expect(container.querySelector('#todos').innerHTML).toEqual(
+ 'Count value is Birds.
Count value is Birds.
Count value is Fish.
Count value is Fish.
Count value is Cat.
Count value is Cat.
'
+ );
+
+ container.querySelector('#btn-push').click();
+
+ expect(container.querySelector('#todos').innerHTML).toEqual(
+ 'Count value is Birds.
Count value is Birds.
Count value is Fish.
Count value is Fish.
Count value is Cat.
Count value is Cat.
Count value is Pig.
Count value is Pig.
'
+ );
+ });
+
+ it('使用effect, setAttribute, addEventListener', () => {
+ /**
+ * 源码:
+ * const A = ['pretty', 'large', 'big', 'small', 'tall', 'short', 'long', 'handsome', 'plain', 'quaint', 'clean',
+ * 'elegant', 'easy', 'angry', 'crazy', 'helpful', 'mushy', 'odd', 'unsightly', 'adorable', 'important', 'inexpensive',
+ * 'cheap', 'expensive', 'fancy'];
+ *
+ * const random = (max: any) => Math.round(Math.random() * 1000) % max;
+ *
+ * let nextId = 1;
+ *
+ * function buildData(count: number) {
+ * let data = new Array(count);
+ *
+ * for (let i = 0; i < count; i++) {
+ * data[i] = {
+ * id: nextId++,
+ * label: `${A[random(A.length)]}`,
+ * }
+ * }
+ * return data;
+ * }
+ *
+ * const Row = (props) => {
+ * const selected = createMemo(() => {
+ * return props.item.selected ? 'danger' : '';
+ * });
+ *
+ * return (
+ * `),
+ _tmpl$2 = /*#__PURE__*/_$template(` |