3

Svelte (v2.7) とSapper (v0.12)を使用しています。docsによると、this.refs利用できるはずですが、それundefinedは私にとっては inoncreateと custom メソッドの両方です。

私の index.html は次のようになります。

<select id="wifi-ssid" ref="wifi-ssid">
...

<script>
    export default {
        oncreate() {
            console.log('this.refs is undefined here', this.refs);
        },
        methods: {
            getIsValid() {
                console.log('this.refs is undefined here too', this.refs);
                // ...
            },
            // ...
        }
    };
</script>

(完全なコードはこちら)。

これはバグではないと思います (そうでなければ、誰もがバグに遭遇したでしょうか?)。

4

2 に答える 2

3

refディレクティブの構文はref:name、ではなく、ref="name"です。<select ref:wifissid>ではなく、有効な JavaScript 識別子である必要がありますwifi-ssid

refsrefs が宣言されていない場合、オブジェクトは作成されません。

于 2018-06-06T15:07:46.040 に答える