이번에는 vue를 사용하여 커스텀 컴포넌트를 작성하는 방법을 보여드리겠습니다. vue를 사용하여 커스텀 컴포넌트를 작성할 때 주의 사항은 무엇입니까?
Vue 컴포넌트 작성
아래에 작성하는 내용은 webpack을 기반으로 구축된 프로젝트인 .vue로 끝나는 단일 파일 컴포넌트를 작성하는 방법입니다. 여전히 webpack을 사용하여 vue 프로젝트를 빌드하는 방법을 모른다면 vue-cli로 이동할 수 있습니다. 완전한 Vue 구성 요소에는 다음 세 부분이 포함됩니다.Vue.component('simple-counter', { template: '<p id="inputBox"><input type="text"></p>', data () { // 数据 return { counter: 0 } }, methods: { // 写点方法 }, created () { // 生命钩子 }, computed: { // 计算属性 } })
<template> <p id="inputBox"> <input type="text"> </p> </template> <!-- template就是这个组件的html,也就是下面部分(vue-loader会将template标签下的内容解析出来): --> <p id="inputBox"> <input type="text"> </p> <!-- 对应原生写法的话,就是template内的dom字符串 -->
export default { data () { return { counter: 0 } }, methods: { // 方法 }, created () { // 生命钩子 }, computed: { // 计算属性 } } // 在这里很明显js部分就是对应的原生写法内的非template部分了。 // export default这个是es6的模块写法,不懂的可以先去了解es6的模块化
<style lang="scss" scoped> ...样式 </style>
소개
이 구성 요소를 다른 구성 요소에서 참조하는 방법은 무엇입니까?컴포넌트 1(button.vue)
<template> <p class="button"> <button @click="onClick">{{text}}</button> </p> </template> <script> export default { props: ['text'], // 获取父组件的传值 data () { return { } }, methods: { onClick () { console.log('点击了子组件') } } } </script> <style lang="scss" scoped> .button { button { width: 100px; } } </style>
컴포넌트 2(box.vue)
<template> <p class="box"> <v-button :text="text"></v-button> <!--使用组件并传值(text)--> </p> </template> <script> import Button from './button.vue' // 引入子组件 export default { components: { 'v-button': Button }, data () { return { text: '按键的name' } }, methods: { } } </script>
Angular 프로젝트에서 scss를 사용하는 단계에 대한 자세한 설명
vue2.0+koa2+mongodb를 사용하여 등록 및 로그인하는 방법
위 내용은 Vue를 사용하여 사용자 정의 구성 요소를 작성하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!