HE Shi-Jun
HE Shi-Jun
@RubyLouvre 正美同学的“不要让数据绑定接触到Web Components”是什么意思? 按说你是区分不出一个自定义元素和html本身元素的,所以机制应该是一视同仁的。 当然你可以说我根据自定义元素的规则(带有 - 的)来区分。可是别忘了还有 type extension 的情况(尽管我觉得type extension这个名字有点问题),就是对现有元素的增强,如 ``,所以那上面既有本身html的属性和事件,也有扩展的属性和事件。
@RubyLouvre “自行通过公共类处理”是什么意思?让组件自己import相关的model?这不是break了封装和复用性嘛。 我理解中组件必然需要数据绑定。因为可以把组件理解为增强性的form controls,所以是最需要数据绑定的部分。
“比对两个树形结构是很麻烦的,它的” 后面没了。。。
@LongTengDao It's a very interesting idea. I plan to first try to figure out whether we can implement it in user land (though I don't know how to achieve point...
@LongTengDao Yeah, shadow realms itself can not satisfy what u want in this issue, though it could be the basis of SES in long term. Currently it seems very hard...
@xtx1130 我想 @XGHeaven 的意思可能是说在所有环境支持 hashbang 的动机可以通过拆分出可共用的部分来解决。 反过来说,单文件中判断当前是什么环境(是否是node)有很多方法,但是只要是单文件,就面临支持 hashbang 的问题,因为 hashbang 在现在的 js 标准中是语法错误,只不过 node.js 做了扩展才支持,但是在其他环境中是不行的。因此不拆分成两个文件(其中一个单纯用作 node.js 的入口文件),是不能同时满足两个需求(第一,可以在linux下直接执行之;第二,可以在多个环境中使用)的目标的。
> 如果一定要加的话,那就干脆把 `#` 也当做一个注释符号不就可以了么? @XGHeaven JS几乎把所有符号都已经用尽,所以为了将来语言还能扩展,每个符号都很『珍贵』。目前单符号只剩下『#』和『@』,并已经被用在了新的提案里(class fields 和 decorators)。所以是不可能把『#』用作注释了。 比较可行的是将『#!』组合视作注释。
@XGHeaven 目前提案的语义相当于只在`#!`位于文件首/脚本首时才作为注释,可能更『奇怪』一点。其实在JS中除了常见的`//`和`/* ... */`注释之外,`` 也有注释作用(行为有一定的差异),目的是为了兼容早期以html注释包裹脚本块的惯例。
@zhangenming 是已经用完了,只不过在某些场景上还能一鸭多吃而已。比如`#`现在同时被用在 class fields、smart pipeline、records and tuples 和这里提到的 hashbang 这四个提案里。
@acutmore What is "realm-specific state" means? I suppose it should throw TypeError or just return `undefined` if cross-realm.