官术网_书友最值得收藏!

  • Vue.js 2.x by Example
  • Mike Street
  • 247字
  • 2021-07-02 20:00:30

Creating and initializing your component

Vue components are registered using the Vue.component(tagName, options) syntax. Each component must have an associated tag name. The Vue.component registration must happen before you initialize your Vue instance. As a minimum, each component should have a template property—denoting what should be displayed when the component is used. Templates must always have a single wrapping element; this is so the custom HTML tag can be replaced with the parent container.

For example, you couldn't have the following as your template:

      <p>Hello</p><p>Goodbye</p>

If you do pass a template of this format, Vue will throw an error in the browser's JavaScript console warning you.

Create a Vue component yourself, with a simple fixed template:

      Vue.component('my-component', {
template: '<p>hello</p>'
});

const app = new Vue({
el: '#app',

// App options
});

With this component declared, it would now give us a <my-component></my-component> HTML tag to use in our view.

You can also specify components on the Vue instance itself. This would be used if you had multiple Vue instances on one site and wished to contain a component to one instance. To do this, create your component as a simple object and assign the tagName within the components object of your Vue instance:

      let Child = {
template: '<p>hello</p>'
}

const app = new Vue({
el: '#app',

// App options

components: {
'my-component': Child
}
});

For our app though, we are going to stick with the Vue.component() method of initializing our components.

主站蜘蛛池模板: 长阳| 云林县| 芷江| 碌曲县| 琼中| 策勒县| 滨州市| 铜川市| 襄垣县| 溧水县| 赤城县| 庆云县| 鹿邑县| 鄂伦春自治旗| 吉木乃县| 宣威市| 杭锦后旗| 依安县| 兖州市| 全州县| 赤水市| 弥渡县| 印江| 达尔| 吉木乃县| 太保市| 平凉市| 波密县| 博爱县| 塔城市| 诸城市| 鱼台县| 县级市| 芮城县| 德阳市| 沅江市| 昌吉市| 沾益县| 阿拉尔市| 元阳县| 周至县|