electon+vue3+vite如何把严格模式关闭
时间: 2023-07-04 09:27:40 浏览: 257
在 Electron + Vue3 + Vite 中,你可以通过在 `main.js` 文件中添加以下代码来关闭严格模式:
```javascript
import { createApp } from 'vue'
import App from './App.vue'
const app = createApp(App)
app.config.warnHandler = () => {}
app.config.productionTip = false
app.config.devtools = false
app.mount('#app')
```
其中,`app.config.warnHandler = () => {}` 用于禁用警告提示,`app.config.productionTip = false` 用于禁用生产模式提示,`app.config.devtools = false` 用于禁用开发工具。这些设置可以帮助我们关闭严格模式,从而提高应用的性能。
同时,在 Electron 中还需要注意,在 `main.js` 文件中需要添加以下代码来禁用 Electron 的安全警告:
```javascript
process.env['ELECTRON_DISABLE_SECURITY_WARNINGS'] = 'true'
```
这样就可以在 Electron + Vue3 + Vite 中关闭严格模式了。
相关问题
electon+vue3+vite 使用 webuploader Uncaught TypeError: ‘caller‘, ‘callee‘, and ‘arguments‘ properties may not be accessed..
这个错误是因为 WebUploader 使用了 `arguments.callee`,而在严格模式下 `arguments.callee` 是被禁用的。而 Vue3 默认开启了严格模式,因此在 Electron + Vue3 + Vite 中使用 WebUploader 会出现这个错误。
解决方法是在 WebUploader 的上传组件中禁用严格模式。具体步骤如下:
1. 在 `src` 目录下新建一个 `utils` 文件夹,并在其中新建一个 `webuploader.js` 文件,代码如下:
```javascript
const WebUploader = require('webuploader')
// 禁用严格模式,避免 WebUploader 报错
WebUploader.Uploader.prototype._init = function () {
const self = this
// 拷贝属性,防止修改全局变量
this.stats = this._widgets = this._callbacks = {}
this.submittable = this._queue = []
this._initEvents()
this._initDelegates()
this._initHooks()
this._initData()
}
```
2. 在需要使用 WebUploader 的组件中引入 `webuploader.js` 文件,并使用 `require` 引入 WebUploader,代码如下:
```javascript
const WebUploader = require('webuploader')
require('@/utils/webuploader')
export default {
name: 'Uploader',
data() {
return {
uploader: null
}
},
mounted() {
// 初始化 WebUploader
this.uploader = WebUploader.create({
// ...配置
})
// ...其他逻辑
}
}
```
这样就可以在 Electron + Vue3 + Vite 中使用 WebUploader 了。注意,由于使用了 `require` 引入 WebUploader,需要在 `vite.config.js` 中添加相应的配置,具体可以参考 [vite 官方文档](https://vitejs.dev/guide/api-javascript.html#require-context)。
electron+vue3+vite如何关闭严格模式
在 Electron + Vue3 + Vite 中,可以通过以下方法关闭严格模式:
1. 在 package.json 文件中添加以下内容:
```json
"vite": {
"jsx": {
"pragma": "Vue.h",
"pragmaFrag": "Vue.Fragment",
"useBuiltins": true
},
"esbuild": {
"jsx": "Vue.h"
},
"mode": "development"
}
```
其中,"mode": "development" 可以让 Vite 在开发模式下运行,并关闭严格模式。
2. 在项目的入口文件中,添加以下代码:
```javascript
// main.js
import { app } from 'electron'
import { createRenderer } from 'vue'
import App from './App.vue'
app.whenReady().then(() => {
const renderer = createRenderer()
renderer.renderToString(App).then(html => {
console.log(html)
})
})
```
在此代码中,通过 createRenderer() 方法创建 Vue3 渲染器,然后使用 renderer.renderToString() 方法将 App.vue 组件渲染为 HTML 字符串。
这样,就可以在 Electron + Vue3 + Vite 中关闭严格模式了。
阅读全文