写点什么

技术博客:Vue 中各种混淆用法汇总

作者:雪奈椰子
  • 2023-12-06
    广东
  • 本文字数:1981 字

    阅读完需:约 6 分钟


摘要

本文主要介绍了在 Vue 中使用的一些常见混淆用法,包括new Vue()export default {}createApp()Vue.componentVue3注册全局组件Vue.use()等,以及如何使用混淆器对代码进行加固,保护应用安全。

引言

在 Vue 开发中,对于新手来说,常常会被诸如new Vue()export default {}等用法所困扰。此外,对于代码的混淆和加固也是开发过程中不可或缺的一部分。本文将对这些常见用法进行汇总整理,并介绍如何通过混淆器对代码进行加固,以提高应用的安全性。

正文

1. new Vue()

new Vue()是用来创建一个 Vue 实例的构造函数,可以包含数据、模板、挂载元素、方法、生命周期钩子等选项。

import Vue from 'vue' import App from './App.vue'import router from './router'
new Vue({ el: '#app', router, components: { App }, template: '<App/>'})
复制代码


2. export default {}

export default用于导出模块,在其他模块需要调用时使用import命令引入。

// App.vue<template>   <div id="app">       <router-view />   </div></template>
<script>export default { name: "App"};</script>
复制代码


3. createApp()

在 Vue3.x 版本中,创建实例的方法变成了createApp()

import { createApp } from 'vue'import App from './App.vue'import router from './router' createApp(App).use(router).mount('#app')
复制代码


4. Vue.component

Vue.component用于全局注册组件。

import Vue from 'vue' import App from './App.vue'import PageTools from '@/components/PageTools'
Vue.component('PageTools', PageTools)
new Vue({ el: '#app', components: { App }, template: ' <div> <App/> <PageTools></PageTools> </div>'})
复制代码


5. Vue3 注册全局组件

// GlobalComponent.vue<template> <button @click="count++">点了 {{ count }} 次!</button></template>
<script>export default { name: "GlobalComponent", data() { return { count: 0, }; },};</script>
// main.jsimport {createApp} from 'vue'import App from './App.vue'import GlobalComponent from "./components/GlobalComponent"
const app = createApp(App)
app.component('GlobalComponent',GlobalComponent);
app.mount('#app')
// App.vue<template> <h1>Hello element-plus!</h1> <GlobalComponent></GlobalComponent> <br /> <about></about></template>
<script>import About from "./components/About.vue";export default { name: "App", components: { About, },};</script>
// About.vue<template> <h2>this is About! </h2> <br/> <GlobalComponent></GlobalComponent></template>
复制代码


6. Vue.use()

Vue.use()用于注册全局组件和 Vue 的原型添加一些东西。

Vue.use(VueRouter)Vue.use(Vuex)Vue.use(vant)Vue.use(ElementUI)
复制代码


7. Vue.prototype

Vue.prototype是一种注册全局变量的方式,使用 Vue.prototype 的变量可以全局访问,例如 axios。

import axios from 'axios';Vue.prototype.$http = axios;
复制代码


8. 关于代码混淆

代码混淆是保护应用的一种方式,可以通过特定平台对应用进行加固处理。推荐使用 ipaguard 等混淆工具对代码进行加固,以增加应用的安全性。

Ipa Guard 是一款功能强大的 ipa 混淆工具,不需要 ios app 源码,直接对 ipa 文件进行混淆加密。可对 IOS ipa 文件的代码,代码库,资源文件等进行混淆保护。 可以根据设置对函数名、变量名、类名等关键代码进行重命名和混淆处理,降低代码的可读性,增加 ipa 破解反编译难度。可以对图片,资源,配置等进行修改名称,修改 md5。只要是 ipa 都可以,不限制 OC,Swift,Flutter,React Native,H5 类 app。



所以就要使用到混淆器,混淆器是把里面的代码变量等信息进行重命名,这样可读性会变得非常差,接着,

到这里,我们完成了对代码的混淆,但是还没有进行加固,防止反编译,所以,请往下看

然后导入自己的包就可以了,这里是流水式的走下来,所以只需要导入和导出就可以了,



添加单个文件,选择好刚刚混淆后的包,然后你做的事情就是等,等待上传完–加固完–下载完–已完成,当到已完成的时候,说明这里已经可以导出了,导出需要前面提到的自己创建的签名,这里可是会用到的,如果不用,则包安装包可能会出现问题

选择导出签名包,选择签名文件,输入密码,然后点击开始导出



导出的包是经过混淆,经过加固比较安全的包了

总结

本文对 Vue 中的常见用法进行了汇总介绍,包括new Vue()export default {}createApp()Vue.componentVue3注册全局组件Vue.use()等内容。同时,还介绍了如何使用混淆器对代码进行加固,以提高应用的安全性。

参考资料

  • Vue 官方文档

  • ipaguard 官方网站

希望以上内容能够对您有所帮助!

✨💻📱

用户头像

雪奈椰子

关注

还未添加个人签名 2022-07-22 加入

还未添加个人简介

评论

发布
暂无评论
技术博客:Vue中各种混淆用法汇总_雪奈椰子_InfoQ写作社区