const user={ login:true, isLogin:function(data){ console.log("展示用户登录信息") } } export default user;
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>
注意
import user from './common/user.js'; Vue.prototype.$user = user;
在.vue页面中引用:
<script> export default { ... methods: { test(){ this.$user.isLogin()//具体使用 } } } </script>
如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>
如nomodule.js,就是纯js文件,没有module.exports暴露出来成为一个对象,这种放在common文件夹下,像上面那样引入会提示找不到,这时候应该把该nomodule.js放在static文件夹下,uniapp发行H5时static文件下的内容不编译,在并在入口.html文件中引入全局js,在.vue页面中直接引用就行
function isNoModule(data){ console.log("3333333") }
<script charset="utf-8" src="<%= BASE_URL %>static/nomodule.js"></script>
<script> export default { ... methods: { test(){ isNoModule(); } } } </script>