使用Grunt和VueJS

时间:2017-06-26 08:42:59

标签: javascript gruntjs vue.js vuejs2

我一直试图用Grunt& amp;设置VueJS2。 Browserify仅用于保持模板的相同错误或渲染函数未定义:[Vue warn]: Failed to mount component: template or render function not defined.

以下是代码:

Index.js:

import Vue from 'vue';
import Router from 'vue-router';
import App from './components/App.vue'
import Resource from 'vue-resource'
import indexComponent from './components/index/template.vue'

Vue.use(Router)
Vue.use(Resource)

// route config
let routes = [
  {
    path: '/',
    name: 'home',
    component: indexComponent
  },
  { path: '*', redirect: '/' }
]

// Set up a new router
let router = new Router({
  routes: routes
})

// Start up our app
new Vue({
  router: router,
  render: h => h(App)
}).$mount('#app')

gruntfile.js:

 browserify: {
   js: {
     files: {
       'src/assets/js/app.js': 'src/js/index.js'
     },
     options: {
       debug: true,
       bundleDelay: 1000,
       transform: [ ["vueify"], ["babelify"] ]
     }
   }
 },

的package.json:

{
  "name": "testing",
  "version": "0.1.0",
  "description": "test",
  "main": "src/index.js",
  "license": "ISC",
  "scripts": {
    "test": "grunt test"
  },
  "browserify": {
    "transform": [
      "babelify",
      "vueify"
    ]
  },
  "browser": {
    "vue": "vue/dist/vue.common.js"
  },
  "devDependencies": {
    "babel-core": "^6.0.0",
    "babel-plugin-transform-runtime": "^6.23.0",
    "babel-preset-es2015": "^6.0.0",
    "babelify": "^6.0.0",
    "browserify": "^14.3.0",
    "grunt": "^0.4.5",
    "grunt-browserify": "^5.0.0",
    "grunt-cli": "^1.2.0",
    "grunt-contrib-connect": "^1.0.2",
    "grunt-contrib-copy": "^1.0.0",
    "grunt-contrib-uglify": "^2.0.0",
    "grunt-contrib-watch": "^0.6.1",
    "grunt-sass": "^1.2.1",
    "partialify": "^3.1.5",
    "vue": "^2.3.3",
    "vue-resource": "^1.3.4",
    "vue-router": "^2.5.3",
    "vueify": "^9.4.1"
  }
}

任何帮助都将不胜感激。

2 个答案:

答案 0 :(得分:1)

如果您import Vue from 'vue';,您将获得无法编译模板的运行时构建you need the standalone build

答案 1 :(得分:0)

在系统中找不到.vue文件的模板(SPA的HTML部分)时出现此错误, 在这种情况下,可能是App.vue或template.vue。

文件的格式必须为:

    `<template>
    </template>
    <script>
       export default{}
    </script>
    <style>
    </style>`