Javascript Vue中的外部JS文件

Javascript Vue中的外部JS文件,javascript,html,jquery,vue.js,Javascript,Html,Jquery,Vue.js,我正在尝试将我的js文件添加到我的vue项目中。下面是我的main.js。我正在尝试导入名为nav的js文件。当我这样做时,我会说src\assets\js\nav.js 未定义2:5错误“$”无未定义 这种情况不仅发生在这个特定的文件中,而且发生在我试图添加的所有外部js查询中 //main.js import Vue from 'vue' import App from './App.vue' import './assets/css/style.css' import '

我正在尝试将我的js文件添加到我的vue项目中。下面是我的main.js。我正在尝试导入名为nav的js文件。当我这样做时,我会说src\assets\js\nav.js 未定义2:5错误“$”无未定义

这种情况不仅发生在这个特定的文件中,而且发生在我试图添加的所有外部js查询中

//main.js

 import Vue from 'vue'
 import App from './App.vue'
    
 import './assets/css/style.css'
 import './assets/css/responsive.css'
    
    
 import './assets/js/nav'
    
 Vue.config.productionTip = false
    
 new Vue({
     render: h => h(App),
 }).$mount('#app')
//nav.js

// fixed menu on scroll for desktop
if ($(window).width() > 992) {
    $(window).scroll(function() {
        if ($(this).scrollTop() > 40) {
            $('#header').addClass("fixed-top");
            // add padding top to show content behind navbar
            $('body').css('padding-top', $('.navbar').outerHeight() + 'px');
        } else {
            $('#header').removeClass("fixed-top");
            // remove padding top from body
            $('body').css('padding-top', '0');
        }
    });
} // end if

一个快速修复方法是将其附加到nav.js的顶部。const$=窗口。$;但这取决于您的构建系统,例如,如果这是Webpack,则可以将$添加为全局变量。谢谢,错误现在消失了,但我的固定顶js代码不起作用。我在html和css中有相同的代码,而不是作为vue项目,这在那里可以工作。nav.js的内容应该在安装vue后执行。您可以从nav.js导出一个函数,该函数在安装Vue时执行。