【发布时间】:2018-01-30 16:53:45
【问题描述】:
我尝试运行一个简单的 Vue.js,但我不断收到以下错误:
[Vue 警告]:您似乎在使用 Vue.js 的独立版本 具有禁止内容安全策略的环境 不安全评估。模板编译器无法在此环境中工作。 考虑放宽政策以允许不安全评估或预编译 将您的模板转换为渲染函数。
main.js:3180 [Vue 警告]:无法生成渲染函数: EvalError:拒绝将字符串评估为 JavaScript,因为 'unsafe-eval' 不是以下允许的脚本来源 内容安全策略指令:“default-src 'self'”。在
with(this){return _c('div',{attrs:{"id":"app"}})}
(在 中找到)
但是,我不明白是什么导致了这个错误。我似乎没有使用任何动态模板,一切都应该预编译。这是我的应用程序的代码:
import Vue from 'vue'
import VueRouter from 'vue-router'
const Home = Vue.component('home-component', {
render() {
return <div>
<router-link to="/users">Users</router-link>
<router-link to="/about">About</router-link>
</div>
}
})
const Users = Vue.component('users-component', {
render() {
return <p>Users</p>
}
})
const NotFound = Vue.component('not-found-component', {
render() {
return <p>Not Found</p>
}
})
const routes = [
{ path: '/', component: Home },
{ path: '/users', component: Users }
]
const router = new VueRouter({
routes
})
const app = new Vue({
router
}).$mount('#app')
以下是我在 gulpfile 中处理 JavaScript 文件的方式:
const paths = {
main: 'web/javascript/src/main.js',
allJs: 'web/javascript/**/*.{js,vue}',
resultJs: 'public/assets/javascript/main.js',
};
gulp.task('scripts', function() {
return browserify(paths.main)
.transform(babelify, { presets: ['es2015'], plugins: ["transform-runtime"] })
.transform(vueify)
.bundle()
.pipe(fs.createWriteStream(paths.resultJs))
}
StackOverflow 上似乎有很多类似的问题,但没有一个对我有帮助。
【问题讨论】:
标签: gulp vue.js browserify jsx