Skip to content

[vue] 在.vue文件中style是必须的吗?那script是必须的吗?为什么? #470

Open
@haizhilin2013

Description

@haizhilin2013
Collaborator

[vue] 在.vue文件中style是必须的吗?那script是必须的吗?为什么?

Activity

Lan-megumi

Lan-megumi commented on Jun 28, 2019

@Lan-megumi

萌新试着回答....
都不是必须的
至于为啥...
我感觉其实都没有的话那就是一个静态网页

maomao1996

maomao1996 commented on Jun 28, 2019

@maomao1996

style 不是必须的,script 是必须的,而且必须要写上

export default {}
wkjjkw

wkjjkw commented on Jun 29, 2019

@wkjjkw

都不是必须的

suchanglin

suchanglin commented on Jun 29, 2019

@suchanglin

都不是必须的,但最好写上,至少script要写上。一切都是模块,因此最后都是转成JavaScript形式。

h-chao

h-chao commented on Jul 2, 2019

@h-chao

都不是必须的
如果是普通组件那么只能是一个静态html
如果是函数式组件, 那么可以直接使用props等函数式组件属性
https://cn.vuejs.org/v2/guide/render-function.html#%E5%87%BD%E6%95%B0%E5%BC%8F%E7%BB%84%E4%BB%B6

Liuhuang814

Liuhuang814 commented on Aug 7, 2019

@Liuhuang814

style 不是必须的,script 是必须的,而且必须要写上

export default {}

可以不写的

HerryBin

HerryBin commented on Sep 24, 2019

@HerryBin

试验了下,在 .vue 文件中,template是必须的,而script与style都不是必须的。
如果没有 template,则 [Vue warn]: Failed to mount component: template or render function not defined.

censek

censek commented on Oct 17, 2019

@censek

不是

Ajaxlover

Ajaxlover commented on Dec 25, 2019

@Ajaxlover

.....萌新一瞧,你们到底谁说得对

Error404ToT

Error404ToT commented on Jan 8, 2020

@Error404ToT

都不是必须的吧

fm1234569

fm1234569 commented on Jan 16, 2020

@fm1234569

管他三七二十一 vue点回车就行了

czkm

czkm commented on Mar 1, 2020

@czkm

都不是必须的

mydaoyuan

mydaoyuan commented on Mar 14, 2020

@mydaoyuan

试验了下,在 .vue 文件中,template是必须的,而script与style都不是必须的。
如果没有 template,则 [Vue warn]: Failed to mount component: template or render function not defined.

提示说,在option上挂个render函数也可以,所以template也不是必须的。 可以这么说吧

Good-XiaAo

Good-XiaAo commented on Mar 18, 2020

@Good-XiaAo

我想知道有很多问题有什么意义呢

mingyec

mingyec commented on Mar 30, 2020

@mingyec

@HerryBin .vue文件也可以用作mixins使用,所以template并不是必须的。确切来讲,script | template

Error404ToT

Error404ToT commented on Apr 1, 2020

@Error404ToT

都不是必须的

liushengguang

liushengguang commented on Apr 29, 2020

@liushengguang

都不是必须的

hushichao

hushichao commented on May 27, 2020

@hushichao

我想知道有很多问题有什么意义呢

显得面试官 高大上哈,牛呗

star-ll

star-ll commented on Jul 16, 2021

@star-ll

都不是必须的,但是这种问题感觉没太大意义

pengshengguang

pengshengguang commented on Oct 30, 2021

@pengshengguang

都不是必须的,不过得分情况

一、.html文件

可以都没有,那就是一个静态文件

二、.vue文件

1、如果没有render函数,那么template是必须要有的,否则报错
2、如果有render函数,那么可以没有template,style,但是要有script
3、可以只有<template>,而script、style是非必须的

三、.js文件

直接tempalte、script、style都可以没有,也能够做组件!!!
只需如下即可
export default { props: [ 'title' ], render(createElement) { return createElement('h1', {}, 'Hello World') } }

Tracymcgrady946

Tracymcgrady946 commented on Sep 7, 2023

@Tracymcgrady946

在单文件组件(.vue 文件)中,<script> 标签是可选的,但通常是必须的。

<script> 标签用于编写组件的 JavaScript 代码,包括组件的逻辑、数据、计算属性、方法等。它是实现组件功能的关键部分,因此在大多数情况下,你会希望在 .vue 文件中包含 <script> 标签。 然而,有一些情况下 <script> 标签可以省略: 纯模板组件:如果你的组件仅包含模板,没有任何逻辑或交互行为,那么可以省略 <script> 标签。这种情况下,你可以只在 .vue 文件中编写 部分。 使用外部组件:当你在 .vue 文件中引用外部组件时,可以不包含 <script> 标签。这通常发生在使用第三方库或组件库时,你只需要在模板中使用这些组件,而不需要在当前组件中编写额外的逻辑。 尽管 <script> 标签是可选的,但它提供了编写组件逻辑的地方,让你能够控制组件的行为和交互。在大多数情况下,你会希望在 .vue 文件中包含 <script> 标签,并编写相应的 JavaScript 代码来完善组件的功能。
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

      Development

      No branches or pull requests

        Participants

        @haizhilin2013@hushichao@HerryBin@mingyec@mydaoyuan

        Issue actions

          [vue] 在.vue文件中style是必须的吗?那script是必须的吗?为什么? · Issue #470 · haizlin/fe-interview