Cod*_*rer 19 angularjs angular-template
快速angular.js问题......
如果我有一个包含以下内容的网页:
<div>{{message}}</div>
Run Code Online (Sandbox Code Playgroud)
我为'消息'设置了模型
$scope.message = "Hello world!"
Run Code Online (Sandbox Code Playgroud)
然后在屏幕上,div的内容将显示为
Hello world!
Run Code Online (Sandbox Code Playgroud)
但是,如果我在Chrome或Firefox中查看来源,源代码仍然如此
<div>{{message}}</div>
Run Code Online (Sandbox Code Playgroud)
有没有办法在Angular模板后捕获页面的源,所以当我查看源代码时,我看到了
<div>Hello world!</div>
Run Code Online (Sandbox Code Playgroud)
例如,如果我正在处理一个项目,我正在使用Angular来帮助我进行模板操作,但是客户端希望HTML中的最终页面没有角度,那么在模板应用到后,我怎样才能捕获页面的HTML给这个客户?
And*_*lin 35
https://github.com/cburgdorf/grunt-html-snapshot
这是一个繁琐的任务,它采用页面的HTML快照:它将在"虚假"或"无头"浏览器中运行页面,称为phantomjs,执行javascript运行,然后为您保存呈现的HTML.
以下是设置Grunt执行此操作的步骤,从无到有:
node和npm(节点包管理器).Grunt可以在npm上找到.cd c:/myprojects/superprojectcd /Users/itcouldevenbeaboat/myprojects/superprojecti hope you know how to do this already if you use linux :Dnpm install -g grunt-cli以全局安装grunt命令行工具.npm install grunt grunt-html-snapshot以安装项目中所有grunt所需的项目运行本地副本以及html快照任务.使用以下内容在项目根目录中创建一个超级简单的Gruntfile.js:
module.exports = function(grunt) {
grunt.loadNpmTasks('grunt-html-snapshot');
grunt.initConfig({
htmlSnapshot: {
all: {
options: {
snapshotPath: 'snapshots/',
sitePath: 'www/index.html',
urls: ['#/home', '#/about', '#/users/itcouldevenbeaboat']
}
}
}
});
grunt.registerTask('default', ['htmlSnapshot']);
};
Run Code Online (Sandbox Code Playgroud)grunt在您的项目根目录中运行,它将拍摄快照:-)您可能需要首先在服务器上启动您的网站,并在Gruntfile中设置sitePath以指向它以使其正常工作.
如果需要有关快照配置的帮助,请查看grunt-html-snapshot页面.
正如兰登所说,Chrome会这样做.我设法通过Chrome的Inspector的"编辑为HTML"选项完成了这项工作.
首先将页面(从现在开始在PAGE_ORIGINAL上)保存为"网页,完成".(保存的页面将被称为PAGE_COPY.)
为我工作.:-)(我试着评论兰登的答案,但没有足够的代表.)
| 归档时间: |
|
| 查看次数: |
21716 次 |
| 最近记录: |