uniapp引入模块化js文件和非模块化js文件的四种方式

 更新时间:2022年11月14日 14:24:22   作者:佛佛ง  
这篇文章主要介绍了uniapp引入模块化js文件和非模块化js文件的四种方式,本文结合实例代码给大家讲解的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

方式1:引入普通的js文件,如user.js

1.1、属性和方法都写在一个变量内部

const user={
    login:true,
    isLogin:function(data){
        console.log("展示用户登录信息")
    }
}
export default user;

 1.2、也可以单独写

function isLogin(data){
    console.log("展示用户登录信息")
}
function getMobile(data){
    console.log("22222222")
}
 
export default {
    isLogin,
    getMobile
}

  在.vue页面中引用:

<script>
    // 绝对路径,@指向项目根目录,在cli项目中@指向src目录
    import userfrom '@/common/user.js';
    // 相对路径
    import user from '../../common/user.js';
 
    export default {
        ...
        methods: {
            test(){
                user.isLogin()  //具体使用
            }
        }
    }
 
</script>

注意

  • js 文件不支持使用/开头的方式引入

方式2:把user.js放在入口文件main.js中,成为全局方法

import user from './common/user.js';
Vue.prototype.$user = user;

在.vue页面中引用:

<script>
    export default {
        ...
        methods: {
            test(){
                this.$user.isLogin()//具体使用
            }
        }
    }
</script>

方式3:引入第三方的模块化.js文件

如md5.js加密文件,可以放在common文件夹下,当成普通的.js文件引用即可,模块化的通过module.exports暴露出来成为一个对象:

var exports = createMethod();
if (COMMON_JS) {
    module.exports = exports;
} else {
    root.md5 = exports;
    if (AMD) {
        define(function () {
            return exports;
        });
    }
}

在.vue页面中引用: 

<script>
    import md5 from '../../common/md5.js';
    export default {
        ...
        methods: {
            test(){
                let sign = md5(getSignStr(arrKeys, arrValues)).toUpperCase();
            }
        }
    }
</script>

方式4:uniapp开发的H5,引入第三方的非模块化.js文件

如nomodule.js,就是纯js文件,没有module.exports暴露出来成为一个对象,这种放在common文件夹下,像上面那样引入会提示找不到,这时候应该把该nomodule.js放在static文件夹下,uniapp发行H5时static文件下的内容不编译,在并在入口.html文件中引入全局js,在.vue页面中直接引用就行

4.1、nomodule.js

function isNoModule(data){
    console.log("3333333")
}

4.2、 并在入口.html文件中引入全局js

<script charset="utf-8" src="<%= BASE_URL %>static/nomodule.js"></script>

4.3、在.vue页面中引用

<script>
    export default {
        ...
        methods: {
            test(){
                isNoModule();
            }
        }
    }
</script>

到此这篇关于uniapp引入模块化js文件和非模块化js文件的文章就介绍到这了,更多相关uniapp引入模块化js文件内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • vue代理请求之Request failed with status code 404问题及解决

    vue代理请求之Request failed with status code 404问题及解决

    这篇文章主要介绍了vue代理请求之Request failed with status code 404问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-07-07
  • vue引用json文件的方法小结

    vue引用json文件的方法小结

    这篇文章主要介绍了vue引用json文件,解决怎么从控制台把数据移到json文件中,只需要直接右击复制值即可,需要的朋友可以参考下
    2022-09-09
  • 在Vue中使用Compass的方法

    在Vue中使用Compass的方法

    本篇文章主要介绍了在Vue中使用Compass的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-03-03
  • Vue2.0仿饿了么webapp单页面应用详细步骤

    Vue2.0仿饿了么webapp单页面应用详细步骤

    本篇文章给大家分享了Vue2.0仿饿了么webapp单页面应用详细步骤,有兴趣的朋友可以跟着操作下。
    2018-07-07
  • Element中Upload组件上传功能实现(图片和文件的默认上传及自定义上传)

    Element中Upload组件上传功能实现(图片和文件的默认上传及自定义上传)

    这篇文章主要介绍了Element中Upload组件上传功能实现包括图片和文件的默认上传及自定义上传,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2024-01-01
  • 详解vue.js数据传递以及数据分发slot

    详解vue.js数据传递以及数据分发slot

    本篇文章给大家通过代码实例分析了vue.js数据传递以及数据分发slot的相关知识,有这方面兴趣的朋友参考下吧。
    2018-01-01
  • vue绑定class与行间样式style详解

    vue绑定class与行间样式style详解

    这篇文章主要介绍了vue绑定class与行间样式style的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-08-08
  • Vue3.js自定义组件 v-model详解

    Vue3.js自定义组件 v-model详解

    在Vue3 中,v-model是用于创建双向数据绑定的指令,通常,我们使用该指令将任何 HTML 表单元素与一个变量绑定以收集输入值,本文给大家介绍Vue3.js自定义组件 v-model,感兴趣的朋友一起看看吧
    2023-10-10
  • vue3中addEventListener的用法详解

    vue3中addEventListener的用法详解

    vue3中定义全局指令时,往往会碰到一个问题:事件无法解绑,为什么会这样,因为通常在指令的mounted钩子中绑定事件,事件处理函数也定义在mounted中,本文讲给大家讲讲vue3中addEventListener的妙用,需要的朋友可以参考下
    2023-08-08
  • vue3 Error:Unknown variable dynamic import: ../views/的解决方案

    vue3 Error:Unknown variable dynamic import: ../views/的解

    这篇文章主要给大家介绍了关于vue3 Error:Unknown variable dynamic import: ../views/的解决方案,文中通过图文以及实例代码介绍的非常详细,需要的朋友可以参考下
    2023-07-07

最新评论