我是靠谱客的博主 舒服小蘑菇,这篇文章主要介绍避免vue导入jquery后,在jquery原生方法中无法调用vue中的$问题,现在分享给大家,希望可以做个参考。

源代码:

$("#addImage").change(function () {
    $("#addImage").replaceWith(
    '<input type="file" id="addImage" style="display: none" οnclick="addImageEvent()" />'
    );
    var objUrl = getObjectURL(this.files[0]);
    if (objUrl) {
    // 获取到objurl
    var textareaStr = $("#mdtext").val();
    message.insertAtCaret($("#mdtext")[0], `nn![](` + objUrl + `)nn`);
    //触发@input事件,更新
    // console.log(vm.$refs.mdtext.dispatchEvent(new InputEvent("input")));
    this.$refs.mdtext.dispatchEvent(new InputEvent("input"))
    }

修改后的:

//因为jquery中的$会与vue中的$冲突,所以在$().change()外面定义一个dom,以防在jquery方法中无法读取到$
        var dom = this.$refs.mdtext;
        $("#addImage").change(function () {
            $("#addImage").replaceWith(
            '<input type="file" id="addImage" style="display: none" οnclick="addImageEvent()" />'
            );
            var objUrl = getObjectURL(this.files[0]);
            if (objUrl) {
            // 获取到objurl
            var textareaStr = $("#mdtext").val();
            message.insertAtCaret($("#mdtext")[0], `nn![](` + objUrl + `)nn`);
            //触发@input事件,更新
            // console.log(vm.$refs.mdtext.dispatchEvent(new InputEvent("input")));
            dom.dispatchEvent(new InputEvent("input"));
            }

最后

以上就是舒服小蘑菇最近收集整理的关于避免vue导入jquery后,在jquery原生方法中无法调用vue中的$问题的全部内容,更多相关避免vue导入jquery后,在jquery原生方法中无法调用vue中内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(53)

评论列表共有 0 条评论

立即
投稿
返回
顶部