2018-12-24 目录结构

1.public文件夹

放公共文件的,一般来说不用管它。但index.html是入口文件。

2.src文件夹

我们开发的文件夹,非常重要。app.js其实是组件文件,index.js文件才是我们的入口文件


*import的用法

一个组件中,有且只有一个默认导出。比如有两个js文件,分别是home.js和user.js。

在user.js里:

export default user1

export const user =42

在home.js里,引用user.js:

import anyText from './user'

import {user} from './user'

anyText可以取任意名字,它都是对应到user.js里的export default user1。

user加了大括号,是因为指定引用user.js里的export const user=42.

在这里我们也可以写成

import anyText, {user} from './user'

我们可以把from 后面的'./user'理解为从user.js文件中引用。写到大括号里的组件就是指定引用,没写到大括号里的就是引用默认组件。

还有一种特殊的:

import * as anyText1 from './user'

这里的*表示引用user.js文件里的所有组件并命名为anyText1,但是不包括默认组件。

3.调整目录结构

2中src里的文件比较乱,什么文件都放到src文件夹下的,所以我们需要调整把它们分别归类。

components用来放我们组件文件,assets用来放我们的静态资源。


4.文件关系

在这个项目里,app.js是根组件。但我们真正实际的项目,一般不是这样的结构。我们一般把动态路由挂载到根组件里。

a)我们在components文件夹中创建Home组件。(Home.js,home的首字母要大写)


注意:构造函数中的关键字super,指代父类的实例(即父类的this对象)。子类必须在constructor方法中调用super方法,否则新建实例时会报错。这是因为子类没有自己的this对象,而是继承父类的this对象,然后对其进行加工。如果不调用super方法,子类就得不到this对象。

class Person {

constructor (name) {

    this.name = name;

  }

}

class Student extends Person {

  constructor (name, age) {

    super(); // 用在构造函数中,必须在使用this之前调用

    this.age = age;

}

}

为什么官方的列子里面写个super(props):

只有一个理由需要传递props作为super()的参数,那就是你需要在构造函数内使用this.props

那官方提供学习的例子中都是写成super(props),所以说写成super(props)是完全没问题的,也建议就直接这样写。

b) 我门在components文件中再创建一个News组件。


©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • “真好,我不是永动机。” 以前总觉得自己像永动机一样,永远都不会有精力懈怠的时候。 以前在考试之前临时抱佛脚的时候...
    刘熹阅读 1,382评论 0 0
  • 这篇文章是对上篇的一个实现。虽然已经破解了它再去实现有点不开心。但作为防止学生暴力的爬页面也比较足够了。 需求 在...
    kmbaby阅读 7,417评论 1 1
  • 小女子践行第40天。 说说是非难辨的过去。 我有个性格倔强的爷爷,很多时候他会用偏激的态度看待他不喜欢的人和事,哪...
    浅滩小贝阅读 2,087评论 0 1
  • 我希望我说的每一句话你都能听得见。 2016年8月21日 丁阅正式搬到我这里来住了,他打算按月交房租给我。我没接受...
    段童阅读 1,499评论 0 1
  • 01《岁月神偷》金玟岐 时间是一趟匆匆流逝的东西,以前晴时有你,阴时还可以想你,就连那些哭泣的时光都纯粹快活。谁还...
    暮雨清风阅读 10,531评论 140 190

友情链接更多精彩内容