今天突然在联系React中遇到一开始就报    Super expression must either be null or a function, not undefined 百度,各种方法,...原来是这样(折腾半小时后一度怀疑人生). 先看看下面三种定义类组件有什么区别 1,第一种  (React.Component   后面是没有的  括号  切记,切记) 2,第二种 (React.Component  C 没有大写) 3,第三种 (正确) 是不是懵的一看都差不多,但是只有最后一种是正…
今天在学习React中的类组件时,突然给我报错VM47:9 Uncaught TypeError: Super expression must either be null or a function, not undefined 我对照着语法看了我的代码半天,没啥问题,于是乎我百思不得其解(不知道你们是否看出毛病),于是我看起了度娘,希望从度娘中给我一个解答 但是看了老半天别人的东西   https://www.cnblogs.com/yezi1116/p/12724434.html  看他的…
按照之前买的用JavaScript开发移动应用的例子来编写的,然后报了这个错.我的头部声明是这样的 var React = require('react-native'); var { Text, View } = React; 经过查询后是由于'React'和'Component'从'react native'分离到了'react'模块.所以这里我们只引入'react native'的模块是不够的,改成这样: import React, { Component } from 'react';…
if (isset($array[2])){ 抛出错误  Cannot use isset() on the result of an expression (you can use "null !== expression" instead) if (null !== $array[2]){ 抛出提示  Notice:  Undefined offset: 2 in /var/www/alt.php on line 144 对了,这家伙是数组,目的是检测该数组中某个 key 值是否存…
null:是对象,但是空引用(不指向任何对象) 空对象:是对象,但它的值是指向没有任何属性的对象的引用 undefined:未定义,所以不是对象,本身被定义为“undefined”这一特殊类型 1. null 参与数值运算时其值会自动转换为 0 ,因此,下列表达式计算后会得到正确的数值: 表达式:123 + null 结果值:123 表达式:123 * null 结果值:0 2. undefined参与任何数值计算时,其结果一定是NaN. 3. alert(typeof undefined); …
最近一直在学react,react的基础部分已经学得差不多了,然而自己并没有做详细的记录,有兴趣的同志可以参考阮一峰老师的教程,个人觉得挺不错的,链接如下:https://github.com/ruanyf/react-babel-webpack-boilerplate, 学完了基础就想倒腾倒腾,webpack整合react加es6. 1.webpack + react + es6 1.1 新建项目 项目目录如下 具体的内容就不解释了,大家应该都看得懂 1.2 配置webpack 配置文件如下…
一.react项目 前端react后端node:https://github.com/GainLoss/react-juejin 前端react后端Pyton:https://github.com/GainLoss/python-react 二.react理解 1.react优点 组件.单向数据.虚拟DOM.生态系统.JSX 组件:一个组件就像一个接受道具作为输入并输出声明的函数接口. UI应该由尽可能多的组件组成可以最大限度地提高可重用性. 单项数据:React使用单向数据流,因此只会更改数据…
1.webpack使用babel-loader后编译报错 报错ERROR in ./entry.js Module build failed: SyntaxError: /Users/yixin/Desktop/react/entry.js: Unexpected token (2:8) 说是 "<" 这个符号有问题,原因是babel6分离为多个包,并且默认不支持react和es2015.因此除了npm install babel-loader --save-dev以外还需要np…
ES6中定义类的方式, 就是ES3和ES5中定义类的语法糖,虽然也有些区别,但是整体定义类的方式更加简洁,类的继承更加方便, 如果想对ES6中的继承更加熟悉, 最好了解ES5中原型继承的方式, 博客园中说JS继承的文章很多, 想要深入了解的同学自己去搜: 定义一个class: 每一个使用class方式定义的类默认都有一个constructor函数, 这个函数是构造函数的主函数, 该函数体内部的this指向生成的实例, say() {}为原型上的方法, 我们定义一个简单的类 : "use stri…
前端开发 Babel下的ES6兼容性与规范   ES6标准发布后,前端人员也开发渐渐了解到了es6,但是由于兼容性的问题,仍然没有得到广泛的推广,不过业界也用了一些折中性的方案来解决兼容性和开发体系问题,但大家仍很疑惑,使用ES6会有哪些兼容性问题. 一.兼容性问题现状 针对ES6的新特性兼容性问题,目前解决的方案是使用语法解析转换工具将es6语法转化为大部分浏览器识别的es5语法,通用的转化方案有babel,traceur,jsx,typescript,es6-shim.当然es6在服务器端也…
最近在看es2015的一些语法,最实用的应该就是继承这个新特性了.比如下面的代码: $(function(){ class Father{ constructor(name, age){ this.name = name; this.age = age; } show(){ console.log(`我叫:${this.name}, 今年${this.age}岁`); } }; class Son extends Father{}; let son = new Son('金角大王', 200);…
关于 React 应用加载的优化,其实网上类似的文章已经有太多太多了,随便一搜就是一堆,已经成为了一个老生常谈的问题. 但随着 React 16 和 Webpack 4.0 的发布,很多过去的优化手段其实都或多或少有些"过时"了,而正好最近一段时间,公司的新项目迁移到了 React 16 和 Webpack 4.0,做了很多这方面的优化,所以就写一篇文章来总结一下. 零.基础概念 我们先要明确一次页面加载过程是怎样的(这里我们暂时不讨论服务器端渲染的情况). 用户打开页面,这个时候页面…
前言 ES5 寄生组合式继承 function Parent (name) { this.name = name; } Parent.prototype.getName = function () { console.log(this.name) } function Child (name, age) { Parent.call(this, name); this.age = age; } Child.prototype = Object.create(Parent.prototype); v…
前言 很久以前学习<Javascript语言精粹>时,写过一个关于js的系列学习笔记. 最近又跟别人讲什么原型和继承什么的,发现这些记忆有些模糊了,然后回头看自己这篇文章,觉得几年前的学习笔记真是简陋. 所以在这里将这篇继承重新更新一下,并且加上ES6的部分,以便下次又对这些记忆模糊了,能凭借这篇文章快速回忆起来. 本篇文章关于ES5的继承方面参考了<Javascript语言精粹>和<JS高程>,后面的ES6部分通过使用Babel转换为ES5代码,然后进行分析. 用构造…
TypeScript源码 class A { hello() { } } class B extends A{ welcome() { } } TypeScript编译 var __extends = (this && this.__extends) || (function () { var extendStatics = function (d, b) { extendStatics = Object.setPrototypeOf || ({ __proto__: [] } insta…
//2种方法本人全部亲测有效 方法1:比较简单 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta h…
从别人的博客里面盗了2张图,这2张图将对象/实例/prototype/__proto__/constructor之间的关系描绘的很清楚. 1.prototype 为 function的属性,实例化的对象(即new之后的对象)没有prototype,只有__proto__,且指向声明该实力对象函数的prototype 2.babel 继承源码分析: class Base{ constructor(){ this.myname = 'jack'; } } Base.$inject = ['$http…
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <meta content="yes" name="apple-mobile-web-app-capable" /> <meta content="black" name="apple-mobile-web-app-status-bar-sty…
在做vue项目和react项目时,都用到了webpack.webpack帮助我们很好地提高了工作效率,但是一直以来没有对其原理进行探究,略有遗憾. 因为使用一个工具,能够深入了解其原理才能更好地使用. 这篇文章将大致分为三个部分进行解读: webpack打包简单介绍 输入webpack后发生了什么,整个运行机制大致是怎样的? 如何理解打包出的bundle.js? 如何实现一个简单的webpack打包工具? 打包优化 第一部分: webpack打包简单介绍    当一个项目使用webpack打包时…
/*! * clipboard.js v1.5.5 * https://zenorocha.github.io/clipboard.js * * Licensed MIT 漏 Zeno Rocha */ !function(t){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=t();else if("function"==typeof…
一.一个真正的react组件编译后长啥样? 我们瞎几把解读了react 虚拟dom对象是怎么生成的,生成了一个什么样的解构.一个react组件不光由若干个这些嵌套的虚拟dom对象组成,还包括各种生命周期钩子.自定义方法.事件等组成 下面让我们继续探索 react组件写法: // 一个再普通不过的react组件写法 mport React,{Component} from 'react'; import Header from '../components/header'; class Home…
今天,无意间从别人那里得知一个很好的js插件--vconsole.min.js,可以实现在移动端打印输出内容以及查看网络请求.下面记录使用方式. 1.下载vconsole.min.js插件 以下复制了插件vconsole.min.js的内容 /*! * vconsole v2.5.1 (https://github.com/WechatFE/vConsole) * Copyright 2016, WechatFE Team * MIT license */ !function(e,t){"obj…
这是分享按钮: <button onclick="call()">通用分享</button> <button onclick="call('wechatFriend')">微信好友</button> <button onclick="call('wechatTimeline')">朋友圈</button> <button onclick="call('qqFr…
1.React-router error: super expression must either be null or a function 原因:引入babel后写ES6风格的代码: class ComponentXX extends React.component{} 这里的C小写了,导致产生这个bug 改为大写就可以 ,不引入router不会产生这个bug 2.React-router 引入Link的时候,在ES6风格的代码下应该这样写: import {Link} from "rea…
    以下介绍在不用修改代码并发布项目的情况下,为我们日常使用的移动web应用(如手机web淘宝)添加vConsole调试工具的方法   vConsole介绍 vConsole是一个轻量.可拓展.针对手机网页的前端开发者调试面板.   使用vConsole的项目可以让手机上的Web浏览器,拥有类似PC调试工具的能力. 正常情况下使用vConsole需要修改项目代码并重新发布. vConsole官方介绍(https://github.com/Tencent/vConsole)   FreeHtt…
生成条形码 <body> <div> <img id="ma"/> </div> </body> </html> <script src="jquery-1.8.1.min.js"></script> <script type="text/javascript" src="https://cdn.bootcss.com/jsbarcod…
html:<a href="javascript:void(0);" class="all-share" onclick="call('default')"> <i></i> <b>分享</b></a>添加此demo即可实现微信,QQ,微信朋友圈,微博等诸多功能 点击更多还有支付宝,邮箱,私信等等分享功能 有一个问题就是,在微信内置浏览器没有效果,所以我又做了判断 最后附上j…
理解 es6 中class构造以及继承的底层实现原理 原文链接:https://blog.csdn.net/qq_34149805/article/details/86105123 1.ES6 class的使用 JavaScript使用的是原型式继承,通过原型的特性实现类的继承 ES6为我们提供了像面向对象继承一样的语法糖 class Parent { constructor(a){ this.filed1 = a; } filed2 = 2; func1 = function(){} } cl…
mui自带有分页,在ui上我还是认为layui的友好点. 第三方插件: template-web.js-----------------前端数据绑定 layui.js.layui.css--------------layui分页控件(可以去官网下载) html代码: <!doctype html> <html> <head> <meta charset="UTF-8"> <title></title> <me…
手册地址: http://aui.github.io/art-template/docs/syntax.html https://github.com/aui/art-template 原文地址: https://blog.csdn.net/qq_42944520/article/details/84842131 效果: 代码: test4.html <!DOCTYPE html> <html> <head> <meta charset="utf-8&q…