javascript - VUE的问题?
PHP中文网
PHP中文网 2017-04-11 12:24:46
[JavaScript讨论组]

官方文档上的,为什么第一个没有单引号,第二个有?

PHP中文网
PHP中文网

认证高级PHP讲师

全部回复(6)
怪我咯

忘了对象属性的说明了吗
你可以加引号也不可以不加,但有一些是一定要加的,比如有-的,或者'sdkjs.sdsd'这样的

大家讲道理

写的时候忘记统一了?

PHP中文网

vue的问题怎么加的是react.js的tag

ringa_lee

第二个有个减号“-”,而减号是不能用在标识符的,也不能直接用在对象属性名上,需要加上双引号

PHPz

因为第二个属性包含特殊符号 -javascript 的命名中是不可以这样写的
但是 Objectkey 是字符串类型 所以可以这么用 拿 style 对象为例子

// 初始化时的写法
const style = { 'margin-top': '10px', marginBottom: '10px' }

// 动态设置的写法
style['margin-top'] = '20px'

有一个比较特殊的东西 DOM 元素的 style 属性兼容两种写法
可以用 [key] 的形式访问或设置 也可以使用 camelCase 的形式访问或设置


PHP中文网

楼主的问题涉及到两个知识点:
1.对象的key值类型都是被解析成字符串类型来处理的,即使你写成光秃秃的active,也会被解析成"active"
2.js标识符规范, 由任意顺序的大小写字母、数字、下划线和美元符号组成

弄清楚了这两点,基本上可以理解vue中的v-on语法解析属性值对象的key值有无分号的必要性,符合标识符规范的,可以不加分号,不符合标识符规范的,必须加分号,不然无法正确被解析

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号