Sam*_*Sam 5 javascript node-modules vue.js
我创建了支持 vue 的自定义节点模块。
包.json
{
"name": "test-node-module",
"version": "1.0.0",
"description": "",
"main": "./dist/index",
"scripts": {
"dev": "vue serve test.vue",
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "Sam",
"license": "ISC",
"devDependencies": {
"@vue/compiler-sfc": "^3.0.0-beta.15",
"bili": "^5.0.5",
"rollup-plugin-vue": "^6.0.0-beta.6",
"vue-template-compiler": "^2.6.11"
}
}
Run Code Online (Sandbox Code Playgroud)
索引.js
import test from "./test.vue"
export default {
install(Vue, options) {
Vue.component("test", test);
}
}
Run Code Online (Sandbox Code Playgroud)
test.vue有简单的文本。
在我的项目中的main.js中
import Test from "test-node-module"
Vue.use(Test)
Run Code Online (Sandbox Code Playgroud)
使用该组件会<test></test>
显示这样的错误。
[Vue warn]: Error in render: "TypeError: vue.openBlock is not a function"
Run Code Online (Sandbox Code Playgroud)
在自定义节点结节中,这是 dist/index.js 文件的样子。
'use strict';
var vue = require('vue');
var script = {};
function render(_ctx, _cache) {
return (vue.openBlock(), vue.createBlock("div", null, " Test123 ")) // Error is here...
}
script.render = render;
var index = {
install: function install(Vue, options) {
Vue.component("test", script);
}
};
module.exports = index;
Run Code Online (Sandbox Code Playgroud)
我该如何解决这个问题?我错过了什么吗?
最新版本rollup-plugin-vue
需要 Vue 3 才能正常运行,而 Vue-cli 安装 Vue v2。有 2 个选项:在您的项目中安装 Vue 3 或使用旧版本的rollup-plugin-vue
.
目前 5.0.0 版本对我有用:
"rollup-plugin-vue": "5.0.0",
Run Code Online (Sandbox Code Playgroud)
这是包的一个已知问题,尚未收到官方回复 https://github.com/vuejs/rollup-plugin-vue/issues/363
归档时间: |
|
查看次数: |
1690 次 |
最近记录: |